文件批量传输组件做为架包使用说明

    文件批量传输组件可做为一个工具架包,其余系统可调用方法进行文件传输相关操做,能对某个文件夹进行自动监控、多线程批量传输、文件md5对比、错误重传等。文件批量传输组件做为系统直接使用见http://my.oschina.net/passerman/blog/715642。多线程

    1.      发送单文件不中转时工具

发送端代码例子:.net

FileClientConfig clientConfig=new FileClientConfig(false,true,false,"localhost",112);
/*		clientConfig.setAuthorityCheck(true);//权限验证
		clientConfig.setAuthorityKey("password111"); //验证密锁
*/		FileTransferClient fileTransferClient=new FileTransferClient(clientConfig);
		 fileTransferClient.init();
		 //要发送的文件
		String absolutePath="E:\\log.txt";
		FileInfo fileInfo=new FileInfo();
    	fileInfo.setFilePath(absolutePath);
		fileTransferClient.sendFile("\\log2.txt", fileInfo); //想保存的文件名

接收端代码例子:线程

//只做为接收主机	
		FileServerConfig fileServerConfig=new FileServerConfig("d:\\csavefile", 112, false);
		ServerReceiveControl serverReceiveControl=new ServerReceiveControl(fileServerConfig);
		//serverReceiveControl.addServerFilePlugin(new ServerFilePlugin());
		//serverReceiveControl.addServerFilePlugin(new DemoServerFilePlugin());
		ReceiveServerPulse ReceiveServerPulse=new ReceiveServerPulse( serverReceiveControl);
		ReceiveServerPulse.start();

    2.  监控文件夹不中转时code

发送端代码例子:server

//不中转监控传输
		FileClientConfig clientConfig=new FileClientConfig("E:\\upload",true,true,false,"localhost",111);
		clientConfig.setTimerTaskPeriod(1000*30);//每30秒监控一次
		/*clientConfig.setAuthorityCheck(true);//权限验证
		clientConfig.setAuthorityKey("password111"); //验证密锁
*/		FileTransferClient fileTransferClient=new FileTransferClient(clientConfig);
		/*fileTransferClient.getTransferControl().addClientFilePlugin(new DemoClientFilePlugin(fileTransferClient.getTransferControl()));//增长自定义拦截器
		fileTransferClient.getTransferControl().addClientFilePlugin(new AuthorityClientFilePlugin(fileTransferClient.getTransferControl())); //添加验证拦截器
		*/
        fileTransferClient.init();

接收端代码例子:blog

    与1相同。md5

    3.  监控文件夹中转传输get

发送端代码例子:it

FileClientConfig clientConfig=new FileClientConfig("E:\\upload", true, true, true, "localhost", 111,"localhost",112,201);
		clientConfig.setTimerTaskPeriod(1000*30);
		clientConfig.setAuthorityCheck(true);//权限验证
		clientConfig.setAuthorityKey("password111"); //验证密锁
		FileTransferClient fileTransferClient=new FileTransferClient(clientConfig);
		fileTransferClient.getTransferControl().addClientFilePlugin(new DemoClientFilePlugin(fileTransferClient.getTransferControl()));
		fileTransferClient.getTransferControl().addClientFilePlugin(new AuthorityClientFilePlugin(fileTransferClient.getTransferControl())); //添加验证拦截器
		fileTransferClient.init();

中转端代码例子:

FileServerConfig fileServerConfig=new FileServerConfig("d:\\csavefile", 111, true); //文件接收配置类
		ServerReceiveControl serverReceiveControl=new ServerReceiveControl(fileServerConfig); //文件接收控制类
		serverReceiveControl.addServerFilePlugin(new ServerFilePlugin());
		serverReceiveControl.addServerFilePlugin(new DemoServerFilePlugin());
		ReceiveServerPulse ReceiveServerPulse=new ReceiveServerPulse(serverReceiveControl);
		ReceiveServerPulse.start();

目标接收端代码例子:

//只做为接收主机	
		FileServerConfig fileServerConfig=new FileServerConfig("d:\\csavefile", 112, false);
		ServerReceiveControl serverReceiveControl=new ServerReceiveControl(fileServerConfig);
		ReceiveServerPulse ReceiveServerPulse=new ReceiveServerPulse( serverReceiveControl);
		ReceiveServerPulse.start();
相关文章
相关标签/搜索