Statistics
| Revision:

svn-gvsig-desktop / branches / v2_0_0_prep / extensions / org.gvsig.installer / org.gvsig.installer.lib / org.gvsig.installer.lib.api / src / main / java / org / gvsig / installer / lib / api / PackageInfo.java @ 33743

History | View | Annotate | Download (7.52 KB)

1
/* gvSIG. Geographic Information System of the Valencian Government
2
 *
3
 * Copyright (C) 2007-2008 Infrastructures and Transports Department
4
 * of the Valencian Government (CIT)
5
 * 
6
 * This program is free software; you can redistribute it and/or
7
 * modify it under the terms of the GNU General Public License
8
 * as published by the Free Software Foundation; either version 2
9
 * of the License, or (at your option) any later version.
10
 * 
11
 * This program is distributed in the hope that it will be useful,
12
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
 * GNU General Public License for more details.
15
 * 
16
 * You should have received a copy of the GNU General Public License
17
 * along with this program; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 
19
 * MA  02110-1301, USA.
20
 * 
21
 */
22

    
23
/*
24
 * AUTHORS (In addition to CIT):
25
 * 2010 {Prodevelop}   {Task}
26
 */
27

    
28
package org.gvsig.installer.lib.api;
29

    
30
import java.io.File;
31

    
32
import org.gvsig.installer.lib.api.InstallerManager.ARCH;
33
import org.gvsig.installer.lib.api.InstallerManager.JVM;
34
import org.gvsig.installer.lib.api.InstallerManager.OS;
35
import org.gvsig.installer.lib.api.InstallerManager.STATE;
36

    
37
/**
38
 * Information of a package that is used on the installation process.
39
 * This information is composed by next fields:
40
 * </br> <li>
41
 * <lu><b>Code</b>: unique identifier for the package.</lu> <lu><b>Name</b>:
42
 * name of the package.</lu> <lu><b>Description</b>: brief description of the
43
 * package functionality</lu> * <lu><b>Version</b>: number of version.</lu>
44
 * <lu><b>Build</b>: build number.</lu> <lu><b>State</b>: the state of the
45
 * package (testing, RC1...).</lu> <lu><b>Operating system</b>: the operating
46
 * system supported (lin, win, mac_10_6, ...).</lu> <lu><b>Architecture</b>: the
47
 * state of the package (testing, RC1, ...).</lu> <lu><b>JavaVM</b>: the minimum
48
 * java version supported (1.5, 1.6, ...).</lu> <lu><b>Is Official</b>: if the
49
 * package is official or if is a not official package.</lu> <lu><b>Type</b>:
50
 * package type (plugin, theme, translation...). Depending of this value a
51
 * different installation provider is selected to control the installation
52
 * process.</lu> <li>
53
 * 
54
 * @author <a href="mailto:jpiera@gvsig.org">Jorge Piera Llodr&aacute;</a>
55
 */
56
public interface PackageInfo {
57

    
58
    /**
59
     * @return
60
     *         Gets the code of the package.
61
     */
62
    public String getCode();
63

    
64
    public void setCode(String code);
65

    
66
    /**
67
     * @return
68
     *         Gets the name of the package.
69
     */
70
    public String getName();
71

    
72
    public void setName(String name);
73

    
74
    /**
75
     * @return
76
     *         Gets the description of the package.
77
     */
78
    public String getDescription();
79

    
80
    public void setDescription(String description);
81

    
82
    /**
83
     * @return
84
     *         Gets the version of the package.
85
     */
86
    public String getVersion();
87

    
88
    public void setVersion(String version);
89

    
90
    /**
91
     * @return
92
     *         Gets the build number of the package.
93
     */
94
    public int getBuild();
95

    
96
    public void setBuild(int build);
97

    
98
    /**
99
     * @return
100
     *         Gets the state of the package.
101
     * @see STATE
102
     */
103
    public String getState();
104

    
105
    /**
106
     * Sets the state of the package
107
     * 
108
     * @param state
109
     * @see STATE
110
     */
111
    public void setState(String state);
112

    
113
    /**
114
     * @return
115
     *         Gets if the package is official.
116
     */
117
    public boolean isOfficial();
118

    
119
    public void setOfficial(boolean official);
120

    
121
    /**
122
     * @return
123
     *         Gets the type of the package.
124
     */
125
    public String getType();
126

    
127
    public void setType(String type);
128

    
129
    /**
130
     * Returns the supported operating system.
131
     * 
132
     * @return the supported operating system
133
     * @see OS
134
     */
135
    public String getOperatingSystem();
136

    
137
    /**
138
     * Sets the supported operating system.
139
     * 
140
     * @param operatingSystem
141
     *            the supported operating system
142
     * @see OS
143
     */
144
    public void setOperatingSystem(String operatingSystem);
145

    
146
    /**
147
     * Returns the supported hardware architecture.
148
     * 
149
     * @return the supported hardware architecture
150
     * @see ARCH
151
     */
152
    public String getArchitecture();
153

    
154
    /**
155
     * Sets the supported hardware architecture.
156
     * 
157
     * @param architecture
158
     *            the supported hardware architecture
159
     * @see ARCH
160
     */
161
    public void setArchitecture(String architecture);
162

    
163
    /**
164
     * Returns the supported java vm version.
165
     * 
166
     * @return the supported java vm version
167
     * @see JVM
168
     */
169
    public String getJavaVM();
170

    
171
    /**
172
     * Sets the supported java vm version.
173
     * 
174
     * @param javaVM
175
     *            the supported java vm version
176
     * @see JVM
177
     */
178
    public void setJavaVM(String javaVM);
179

    
180
    public String getGvSIGVersion();
181

    
182
    public void setGvSIGVersion(String gvSIGVersion);
183

    
184
    /**
185
     * Add an external file that have to be copied in the
186
     * installation process.
187
     * 
188
     * @param file
189
     *            The file to copy.
190
     * @deprecated
191
     *             This method will be deleted on next releases because
192
     *             all the files that a plugin needs to work should be
193
     *             contained in its directory.
194
     */
195
    @Deprecated
196
    public void addFileToCopy(File file);
197

    
198
    /**
199
     * Gets one external file that is copied on
200
     * the installation process.
201
     * 
202
     * @param index
203
     *            The position of the external file.
204
     * @return
205
     *         The file that have to be copied.
206
     * @deprecated
207
     *             This method will be deleted on next releases because
208
     *             all the files that a plugin needs to work should be
209
     *             contained in its directory.
210
     */
211
    @Deprecated
212
    public File getFileToCopyAt(int index);
213

    
214
    /**
215
     * Gest the number of external files that have to be
216
     * copied in the installation process.
217
     * 
218
     * @return
219
     *         The number of files.
220
     * @deprecated
221
     *             This method will be deleted on next releases because
222
     *             all the files that a plugin needs to work should be
223
     *             contained in its directory.
224
     */
225
    @Deprecated
226
    public int getFileToCopySize();
227

    
228
    /**
229
     * Removes one of the files that have to be copied in the
230
     * installation process.
231
     * 
232
     * @param index
233
     *            the position of the file.
234
     * @deprecated
235
     *             This method will be deleted on next releases because
236
     *             all the files that a package needs to work should be
237
     *             contained in its directory.
238
     */
239
    @Deprecated
240
    public void removeFileToCopy(int index);
241

    
242
    /**
243
     * Sets the ant script that can be executed in the
244
     * installation process.
245
     * 
246
     * @param antScript
247
     *            The ant script to copy.
248
     * @deprecated
249
     *             This method will be deleted on next releases because
250
     *             all the files that a package needs to work should be
251
     *             contained in its directory.
252
     */
253
    @Deprecated
254
    public void setAnScript(String antScript);
255

    
256
    /**
257
     * Gets the ant script that has to be executed in the
258
     * installation process.
259
     * 
260
     * @return
261
     *         the script.
262
     * @deprecated
263
     *             This method will be deleted on next releases because
264
     *             all the files that a package needs to work should be
265
     *             contained in its directory.
266
     */
267
    @Deprecated
268
    public String getAntScript();
269

    
270
}