Revision 4181 org.gvsig.raster/trunk/org.gvsig.raster/org.gvsig.raster.lib/org.gvsig.raster.lib.impl/src/main/java/org/gvsig/raster/impl/store/AbstractRasterDataParameters.java

View differences:

AbstractRasterDataParameters.java
23 23
package org.gvsig.raster.impl.store;
24 24

  
25 25
import java.io.File;
26
import java.net.URI;
26 27

  
27 28
import org.cresques.DataTypes;
28 29
import org.cresques.cts.IProjection;
30

  
29 31
import org.gvsig.fmap.crs.CRSFactory;
30 32
import org.gvsig.fmap.dal.coverage.store.RasterDataServerExplorer;
31 33
import org.gvsig.fmap.dal.coverage.store.parameter.RasterDataParameters;
......
35 37
/**
36 38
 * Base class for all kind of parameters in raster
37 39
 * TODO: Now it only accepts files. Maybe in the future other kind of sources could be accepted like remote services (URL)
38
 * 
40
 *
39 41
 * @author Nacho Brodin (nachobrodin@gmail.com)
40 42
 */
41 43
public abstract class AbstractRasterDataParameters extends AbstractDataParameters implements
42 44
		RasterDataParameters {
43 45
	public static final String     PERSISTENT_NAME        = "AbstractRasterDataParameters_Persistent";
44 46
    public static final String     PERSISTENT_DESCRIPTION = "AbstractRasterDataParameters Persistent";
45
    
47

  
46 48
	private static final String    FIELD_FRAME            = "frame";
47 49
	private static final String    FIELD_ALPHABAND        = "alphaband";
48 50
	private static final String    FIELD_VISIBLE          = "visible";
49 51
	private static final String    FIELD_REPROJ_OPTION    = "selected_option";
50
	
52

  
51 53
	protected IProjection          crs                    = null;
52
	
53 54

  
55

  
54 56
	public static void registerDynClass(DynStruct definition) {
55 57
		definition.addDynFieldString(FIELD_URI)
56 58
		.setDescription("Uniform Resource Identifier (File name or URL)")
57
		.setType(DataTypes.STRING)
59
		.setType(DataTypes.URI)
58 60
		.setMandatory(false);
59 61

  
60 62
		definition.addDynFieldInt(FIELD_FRAME)
......
68 70
		.setType(DataTypes.INT)
69 71
		.setMandatory(false)
70 72
		.setHidden(true);
71
		
73

  
72 74
		definition.addDynFieldBoolean(FIELD_VISIBLE)
73 75
        .setDescription("If the boolean in i position is true, that means that the i provider is visible")
74 76
        .setMandatory(false)
75 77
        .setHidden(true);
76
        
78

  
77 79
        definition.addDynFieldInt(FIELD_REPROJ_OPTION)
78 80
		.setDescription("Reprojection option")
79 81
		.setType(DataTypes.INT)
80 82
		.setDefaultFieldValue(new Integer(0))
81 83
		.setMandatory(false)
82 84
		.setHidden(true);
83
		
85

  
84 86
		definition.addDynFieldString(FIELD_RMF_FOLDER)
85 87
		.setDescription("Folder to store the RMF file")
88
        .setType(DataTypes.FILE)
86 89
		.setMandatory(false)
87 90
		.setHidden(true);
88
		
91

  
89 92
		/*definition.addDynFieldObject(FIELD_CRS)
90 93
		.setDescription("CRS")
91 94
		.setMandatory(false)
92 95
		.setHidden(true);*/
93 96
	}
94
	
97

  
95 98
	public void assignFields(RasterDataParameters par, RasterDataServerExplorer explorer) {
96 99
		setRMFFolder(par.getRMFFolder());
97 100
		setReprojectionOption(par.getReprojectionOption());
......
104 107
	public AbstractRasterDataParameters() {
105 108
		super();
106 109
	}
107
	
110

  
108 111
	public void setReprojectionOption(int option) {
109 112
		this.setDynValue(FIELD_REPROJ_OPTION, option);
110 113
	}
111
	
114

  
112 115
	public int getReprojectionOption() {
113 116
		Integer b = (Integer)getDynValue(FIELD_REPROJ_OPTION);
114 117
		if(b != null)
115 118
			return ((Integer)b).intValue();
116 119
		return 0;
117 120
	}
118
	
121

  
119 122
	public boolean isValid() {
120 123
		return (this.getURI() != null);
121 124
	}
122 125

  
123
	public String getURI() {
124
		return (String) this.getDynValue(FIELD_URI);
126
	public URI getURI() {
127
		return (URI) this.getDynValue(FIELD_URI);
125 128
	}
126 129

  
127
	public void setURI(String uri) {
130
	public void setURI(URI uri) {
128 131
		this.setDynValue(FIELD_URI, uri);
129 132
	}
130
	
131
	public void setRMFFolder(File rmfFolder) {
132
		if(rmfFolder != null)
133
			this.setDynValue(FIELD_RMF_FOLDER, rmfFolder.getAbsolutePath());
134
	}
135
	
133

  
134
    public void setRMFFolder(File rmfFolder) {
135
        this.setDynValue(FIELD_RMF_FOLDER, rmfFolder);
136
    }
137

  
136 138
	public File getRMFFolder() {
137
		String s = (String)this.getDynValue(FIELD_RMF_FOLDER);
138
		if(s != null)
139
			return new File(s);
140
		else
141
			return null;
139
		return (File)this.getDynValue(FIELD_RMF_FOLDER);
142 140
	}
143 141

  
144 142
	public String getSRSID() {
......
174 172
	public void setAlphaBand(int alphaBand) {
175 173
		this.setDynValue(FIELD_ALPHABAND, new Integer(alphaBand));
176 174
	}
177
	
175

  
178 176
	/**
179 177
	 * Sets the frame width
180 178
	 * @param frame
......
182 180
	public void setFrame(int frame) {
183 181
		this.setDynValue(FIELD_FRAME, new Integer(frame));
184 182
	}
185
	
183

  
186 184
	/**
187 185
	 * Gets the number of alpha band
188 186
	 * @param alphaBand
......
193 191
			return ((Integer)b).intValue();
194 192
		return 0;
195 193
	}
196
	
194

  
197 195
	/**
198 196
	 * Gets the frame width
199 197
	 * @param frame
......
204 202
			return ((Integer)b).intValue();
205 203
		return 0;
206 204
	}
207
	
205

  
208 206
	public boolean isVisible() {
209 207
		Boolean b = (Boolean)getDynValue(FIELD_VISIBLE);
210 208
		if(b != null)
211 209
			return ((Boolean)b).booleanValue();
212 210
		return true;
213 211
	}
214
	
212

  
215 213
	public void setVisible(boolean visible) {
216 214
		this.setDynValue(FIELD_VISIBLE, new Boolean(visible));
217 215
	}
218
	
216

  
219 217
	public boolean isSourceTiled() {
220 218
		return false;
221 219
	}

Also available in: Unified diff