dangsn
2024-12-26 4e9ff2ce6a830bb2340d7c8612c72eea0c5a553e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
package com.vci.client.fm;
 
import com.vci.corba.common.VCIError;
import com.vci.corba.framework.data.PvolumeInfo;
 
 
public interface ClientFOOperationInterface {
    /**
     * 创建文件初始的文件对象
     * @return
     * @throws VCIError
     */
    public FileObject createNewFile() throws VCIError;
    /**
     * 读取文件对象
     * @param oid,文件对象oid
     * @return
     * @throws VCIError
     */
    public FileObject getFileObject(String oid) throws VCIError;
    /**
     * 保存新的文件对象并保存对应的文件
     * @param localfilePath,本地文件路径
     * @param fileObject,构建出的新文件对象
     * @return
     * @throws VCIError
     */
    public  FileObject createNewFile(String localfilePath, FileObject fileObject) throws VCIError;
 
    /**
     * 保存编辑文件后的文件对象,只支持文件对象的属性编辑
     * @param fileObject
     * @return
     * @throws VCIError
     */
    public boolean updateFileObject(FileObject fileObject) throws VCIError;
 
    /**
     * 检入文件对象
     * @param fileObject,文件对象
     * @return
     * @throws VCIError
     */
    public boolean checkInFileObject(FileObject fileObject) throws VCIError;
 
    /**
     * 检出文件对象
     * @param fileObject,文件对象
     * @return
     * @throws VCIError
     */
    public boolean checkOutFileObject(FileObject fileObject) throws VCIError;
    
    /**
     * 下载文件
     * @param clientPath,客户端存储路径
     * @param serverPath,服务器端文件路径
     * @return
     * @throws VCIError
     */
    public boolean downLoadFile(String clientPath, String serverPath) throws VCIError;
    
    /**
     * 上传文件
     * @param localfilePath,客户端文件路径
     * @param updateFilePath,服务器端存储路径
     * @return
     * @throws VCIError
     */
    public boolean uploadFile(String localfilePath, String updateFilePath) throws VCIError;
    
    /**
     * 删除文件对象及其对应的文件
     * @param oid,文件对象oid
     * @return
     * @throws VCIError
     */
    public boolean deleteFileObject(String oid) throws VCIError;
 
    /***
     * 升版本
     * 
     */
    /**
     * 升版本文件对象并保持(复制文件)
     * @param fromFo,源文件对象
     * @param revisionVal,生版后的版本号(可以为空)
     * @return
     * @throws VCIError
     */
    public FileObject reviseFileObject(FileObject fromFo,String revisionVal) throws VCIError ;
    /**
     * 撤销检查
     * @param fileObject,文件对象
     * @return
     * @throws VCIError
     */
    public boolean undCheckOutFileObject(FileObject fileObject) throws VCIError;
 
 
    /**
     * 根据文件对象获取其对应的文件存储全路径
     * 
     * @param fileObject,文件对象
     * @return
     * @throws VCIError
     */
    public String getFullFilePath(FileObject fileObject) throws VCIError;
    
    /**
     * 上传文件(只上传文件,更文件对象存储路径,不持久化文件对象)
     * @param localfilePath,本地文件
     * @param fileObject,文件对象
     * @return
     * @throws VCIError
     */
    public  FileObject uploadFile(String localfilePath, FileObject fileObject) throws VCIError;
    
    /**
     * 根据对象OID下载对应的文件
     * @param clientPath,客户端下载路径
     * @param fileOid,文件对象的oid
     * @return
     * @throws VCIError
     */
    public boolean downLoadFileByOid(String clientPath, String fileOid) throws VCIError;
    
    /**
     * 存储文件以及业务对象到服务器,文件存储到指定的卷上,如果卷为空取默认的卷
     * @param localfilePath,本地下载路径
     * @param fileObject,文件对象
     * @param pvolumeInfo,卷对象
     * @return
     * @throws VCIError
     */
    public  FileObject createNewFile(String localfilePath, FileObject fileObject, PvolumeInfo pvolumeInfo) throws VCIError;
}