编辑: 我不是阿L | 2014-12-31 |
3 Lyra Resource Platform 文档 详细设计说明书 开一个新的服务器面板,连接服务器. (2) RemoteFilesPanel 类的主要功能是连接 Ftp 服务器并显示文件. 这里会进行文件的上载, 下载及预览等操作. RemoteFilesPanel 的内部类 TransferController 负责调用 FtpClient 类提供 的功能与服务器进行交互,完成用户指定的文件操作.TransferController 还有三个内部类: ConnThread 类是负责连接服务器的线程(新开一个线程,目的是避免连接时阻塞) , DownloadFileThread 类是下载文件的线程,UploadFileThread 类是上载文件的线程. (
3 ) SearchResultPanel 类是显示搜索结果的类,它有两个子类SearchResultPanelWithinSearchEngine 类的功能是在搜索引擎中搜索,SearchResultPanelWithinServer 类的功能是站内搜索.搜索引擎的搜索会调用 search 包中的 程序,搜索引擎搜索完成后search 包通过OnSearchFinished ( ) 来通知SearchResultPanelWithinSearchEngine 类,然后显示搜索结果. (4)RightTabbedPane 是显示 ftp 服务器文件表格的 TabbedPane 类. z BottomPanelCtrl.java:实现主窗口下部面板及控件,显示下载情况,服务器连接信息. 包含的主要类有: (1)RemoteMessPanel 类是显示服务器连接信息的面板.需要显示 ftp 服务器传回的信息, 并在显示前进行编码转换,还需要显示本地的相关信息. (2)DownloadingMessPanel 类是显示资源下载信息的面板,显示下载资源的大小,下载速 度,已用时间,剩余时间等信息. 3.5 流程逻辑 总体流程: MainFrame.class
4 LeftPanel.class PreviewWrapperPanel RightPanel.class BottomPanel.class FtpClient.class search 显示下载信息 预览 上载 FtpFrame.class Lyra Resource Platform 文档 详细设计说明书 3.6 简单类图 4.模块 2(client)设计说明 4.1 模块描述 户端 FtpClient,有两个文件 FtpClient.java 和FtpLoginException.java, p 客户端 FtpClient,实现了 ftp 协议,用于和 ftp 服务器通讯和数据传输. 计 要文件,文件中包含的主要类及其功能和与其它包的交互如下: 实现 ftp 客 前者具体实现了 ftp 协议,后者是为登录时可能抛出的异常而定义的类. 4.2 功能 实现 ft 4.3 交互的模块 ui 4.4 模块设 该模块中的主 z FtpClient.java:含有类 FtpClient,,
该类会被 ui 包中的界面类调用,完成 ftp 功能. 其中要功能的实现有:
5 Lyra Resource Platform 文档 详细设计说明书 在构造函数中根据 ip 和port 建立与服务器的连接;
ii() ;
字) ;
) ;
件list(文件名) ;
),二进制 putBinary() . z 录时可能抛出的异常. 5.模块 3(common)设计说明 5.1 模块描述 辅助类,系统启动时会从 properties.xml 读取一些配置信息.可以通过手动修 改配 些辅助类,例如用于读取和存储系统配置属性的类.用于将 属性名-属性值 对存 计 要文件,文件中包含的主要类及其功能和与其它包的交互如下: 主要功 ()根据属性名取得属性值,如果属性不存在返回 null;
t,其中 的每 值;
z 在xml 文件中存储 属性名-属性值 登录服务器 login() (用户名,密码) ;
向服务器追加 ascii 文件 appendAscii() ;
向服务器追加二进制文件 appendBinary() ;
设置数据传输方式为二进制 binary,ascii 码sc 改变工作目录 cd(String newdirectory) ;
返回上一级目录 cdup() ;
断开连接 closeserver() ;
删除文件 delete(文件名) ;
删除文件夹 rmdir(文件夹的名 用ascii 模式下载文件 getAscii(文件名 用二进制方式下载文件 getBinary(文件名) ;