Revision 2328 org.gvsig.raster/branches/org.gvsig.raster_dataaccess_refactoring/org.gvsig.raster.lib/org.gvsig.raster.lib.impl/src/main/java/org/gvsig/raster/impl/grid/filter/RasterFilterListManagerImpl.java
RasterFilterListManagerImpl.java | ||
---|---|---|
60 | 60 |
* @author Nacho Brodin (nachobrodin@gmail.com) |
61 | 61 |
*/ |
62 | 62 |
public class RasterFilterListManagerImpl { |
63 |
protected RasterFilterList rasterFilterList = null; |
|
64 |
protected List<String> filterList = null; |
|
65 |
private List<RasterFilterListManager> |
|
66 |
managers = new ArrayList<RasterFilterListManager>(); |
|
63 |
protected RasterFilterList rasterFilterList = null; |
|
64 |
protected List<String> filterList = null; |
|
65 |
private List<RasterFilterListManager> managers = new ArrayList<RasterFilterListManager>(); |
|
67 | 66 |
|
68 | 67 |
/** |
69 | 68 |
* Constructor |
70 | 69 |
* @param filterStack |
71 | 70 |
*/ |
72 |
@SuppressWarnings("unchecked") |
|
73 | 71 |
public RasterFilterListManagerImpl(RasterFilterList filterStack) { |
74 | 72 |
this.rasterFilterList = filterStack; |
75 | 73 |
|
76 | 74 |
// Cargamos el manager con los gestores de drivers registrados |
77 | 75 |
ExtensionPointManager extensionPoints = ToolsLocator.getExtensionPointManager(); |
78 | 76 |
ExtensionPoint point = extensionPoints.get("RasterFilter"); |
79 |
Iterator iterator = point.iterator(); |
|
77 |
Iterator<?> iterator = point.iterator();
|
|
80 | 78 |
while (iterator.hasNext()) { |
81 | 79 |
ExtensionPoint.Extension entry = (ExtensionPoint.Extension) iterator |
82 | 80 |
.next(); |
83 | 81 |
if (entry != null) { |
84 |
Class RasterClass = entry.getExtension(); |
|
82 |
Class<?> RasterClass = entry.getExtension();
|
|
85 | 83 |
Object obj = RasterFilterListManagerImpl.loadClass(RasterClass, this); |
86 | 84 |
if (obj != null) |
87 | 85 |
managers.add((RasterFilterListManager)obj); |
... | ... | |
198 | 196 |
return filterList; |
199 | 197 |
} |
200 | 198 |
|
201 |
/* |
|
202 |
* (non-Javadoc) |
|
203 |
* @see org.gvsig.raster.grid.filter.IRasterFilterListManager#createStackFromStrings(java.util.ArrayList, java.lang.String, int) |
|
204 |
*/ |
|
205 |
@SuppressWarnings("unchecked") |
|
206 |
public int createStackFromStrings(List filters, String fil, int filteri) { |
|
199 |
public int createStackFromStrings(List<?> filters, String fil, int filteri) { |
|
207 | 200 |
return filteri; |
208 | 201 |
} |
209 | 202 |
|
... | ... | |
297 | 290 |
* @param stackManager Par?metro del constructor de la clase a instanciar |
298 | 291 |
* @return Objeto que corresponde a la instancia de la clase pasada. |
299 | 292 |
*/ |
300 |
@SuppressWarnings("unchecked") |
|
301 |
public static Object loadClass(Class clase, RasterFilterListManagerImpl stackManager) { |
|
293 |
public static Object loadClass(Class<?> clase, RasterFilterListManagerImpl stackManager) { |
|
302 | 294 |
Object obj = null; |
303 | 295 |
try { |
304 | 296 |
try { |
305 |
Constructor hazNuevo = clase.getConstructor(new Class[]{ RasterFilterList.class }); |
|
297 |
Constructor<?> hazNuevo = clase.getConstructor(new Class[]{ RasterFilterList.class });
|
|
306 | 298 |
obj = hazNuevo.newInstance(new Object[]{stackManager.getFilterList()}); |
307 | 299 |
} catch (NoSuchMethodException e) { |
308 |
Constructor hazNuevo = clase.getConstructor(new Class[]{ RasterFilterListManagerImpl.class }); |
|
300 |
Constructor<?> hazNuevo = clase.getConstructor(new Class[]{ RasterFilterListManagerImpl.class });
|
|
309 | 301 |
obj = hazNuevo.newInstance(new Object[]{stackManager}); |
310 | 302 |
} |
311 | 303 |
} catch (SecurityException e) { |
... | ... | |
324 | 316 |
return obj; |
325 | 317 |
} |
326 | 318 |
|
327 |
/* |
|
328 |
* (non-Javadoc) |
|
329 |
* @see org.gvsig.fmap.dal.coverage.grid.RasterFilterListManager#getFilterList() |
|
330 |
*/ |
|
331 | 319 |
public RasterFilterList getFilterList() { |
332 | 320 |
return rasterFilterList; |
333 | 321 |
} |
334 | 322 |
|
335 |
/* |
|
336 |
* (non-Javadoc) |
|
337 |
* @see org.gvsig.fmap.dal.coverage.grid.RasterFilterListManager#getManagerByID(java.lang.String) |
|
338 |
*/ |
|
339 |
@SuppressWarnings("unchecked") |
|
340 | 323 |
public RasterFilterListManager getManagerByID(String id) throws FilterManagerException { |
341 | 324 |
// Cargamos el manager con los gestores de drivers registrados |
342 | 325 |
ExtensionPointManager extensionPoints = ToolsLocator.getExtensionPointManager(); |
343 | 326 |
ExtensionPoint point = extensionPoints.get("RasterFilter"); |
344 | 327 |
Extension ext = point.get(id); |
345 | 328 |
if (ext != null) { |
346 |
Class clase = ext.getExtension(); |
|
347 |
Class [] args = {RasterFilterListManagerImpl.class}; |
|
329 |
Class<?> clase = ext.getExtension();
|
|
330 |
Class<?> [] args = {RasterFilterListManagerImpl.class};
|
|
348 | 331 |
try { |
349 |
Constructor hazNuevo = clase.getConstructor(args); |
|
332 |
Constructor<?> hazNuevo = clase.getConstructor(args);
|
|
350 | 333 |
Object [] args2 = {this}; |
351 | 334 |
return (RasterFilterListManager) hazNuevo.newInstance(args2); |
352 | 335 |
} catch (SecurityException e) { |
... | ... | |
370 | 353 |
* Obtiene el manager registrado a partir de la clase |
371 | 354 |
* @return |
372 | 355 |
*/ |
373 |
@SuppressWarnings("unchecked") |
|
374 |
public RasterFilterListManager getManagerByClass(Class c) { |
|
356 |
public RasterFilterListManager getManagerByClass(Class<?> c) { |
|
375 | 357 |
for (int j = 0; j < managers.size(); j++) |
376 | 358 |
if (managers.get(j).getClass().equals(c)) |
377 | 359 |
return (RasterFilterListManager) managers.get(j); |
... | ... | |
382 | 364 |
* Obtiene el manager registrado a partir de la clase de un filtro |
383 | 365 |
* @return |
384 | 366 |
*/ |
385 |
@SuppressWarnings("unchecked") |
|
386 |
public RasterFilterListManager getManagerByFilterClass(Class c) { |
|
367 |
public RasterFilterListManager getManagerByFilterClass(Class<?> c) { |
|
387 | 368 |
for (int i = 0; i < managers.size(); i++) { |
388 | 369 |
RasterFilterListManager localMan = ((RasterFilterListManager) managers.get(i)); |
389 | 370 |
for (int j = 0; j < localMan.getRasterFilterList().size(); j++) { |
390 |
Class f = (Class)localMan.getRasterFilterList().get(j);
|
|
371 |
Class<?> f = (Class<?>)localMan.getRasterFilterList().get(j);
|
|
391 | 372 |
if (f.isAssignableFrom(c))//(f.equals(c)) |
392 | 373 |
return localMan; |
393 | 374 |
} |
... | ... | |
418 | 399 |
return filters; |
419 | 400 |
} |
420 | 401 |
|
421 |
/* |
|
422 |
* (non-Javadoc) |
|
423 |
* @see org.gvsig.fmap.dal.coverage.grid.RasterFilterListManager#addFilter(java.lang.Class, org.gvsig.fmap.dal.coverage.datastruct.Params) |
|
424 |
*/ |
|
425 |
@SuppressWarnings("unchecked") |
|
426 |
public void addFilter(Class classFilter, Params params) |
|
402 |
public void addFilter(Class<?> classFilter, Params params) |
|
427 | 403 |
throws FilterTypeException { |
428 |
// TODO Auto-generated method stub |
|
429 | 404 |
|
430 | 405 |
} |
431 | 406 |
|
... | ... | |
435 | 410 |
|
436 | 411 |
public int createFilterListFromStrings(List<String> filters, |
437 | 412 |
String fil, int filteri) throws FilterTypeException { |
438 |
// TODO Auto-generated method stub |
|
439 | 413 |
return 0; |
440 | 414 |
} |
441 | 415 |
|
442 | 416 |
public List<String> getStringsFromFilterList( |
443 | 417 |
List<String> filterList, RasterFilter rf) { |
444 |
// TODO Auto-generated method stub |
|
445 | 418 |
return null; |
446 | 419 |
} |
447 | 420 |
|
448 |
/* |
|
449 |
* (non-Javadoc) |
|
450 |
* @see java.lang.Object#finalize() |
|
451 |
*/ |
|
452 | 421 |
protected void finalize() throws Throwable { |
453 | 422 |
rasterFilterList = null; |
454 | 423 |
if(managers != null) { |
Also available in: Unified diff