Revision 44297 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.jdbc/src/main/java/org/gvsig/fmap/dal/store/jdbc2/spi/JDBCServerExplorerBase.java

View differences:

JDBCServerExplorerBase.java
33 33
import org.apache.commons.lang3.tuple.ImmutablePair;
34 34
import org.apache.commons.lang3.tuple.Pair;
35 35
import org.gvsig.fmap.dal.DALLocator;
36
import static org.gvsig.fmap.dal.DataManager.RESOURCES_TABLE_NAME;
36 37
import org.gvsig.fmap.dal.DataStore;
37 38
import org.gvsig.fmap.dal.DataStoreParameters;
38 39
import org.gvsig.fmap.dal.NewDataStoreParameters;
......
65 66
import org.gvsig.fmap.dal.store.jdbc2.spi.operations.ExecuteOperation;
66 67
import org.gvsig.fmap.dal.store.jdbc2.spi.operations.UpdateTableStatisticsOperation;
67 68
import org.gvsig.tools.exception.BaseException;
69
import org.gvsig.tools.resourcesstorage.EmptyResourcesStorage;
70
import org.gvsig.tools.resourcesstorage.ResourcesStorage;
68 71
import org.slf4j.Logger;
69 72
import org.slf4j.LoggerFactory;
70 73

  
71 74

  
75
@SuppressWarnings("UseSpecificCatch")
72 76
public class JDBCServerExplorerBase extends AbstractDBServerExplorer implements JDBCServerExplorer {
73 77

  
74 78
    private static final Logger LOG = LoggerFactory.getLogger(JDBCServerExplorerBase.class);
......
370 374
    }
371 375

  
372 376
    @Override
373
    public DataStoreParameters get(String name) throws DataException {
377
    public JDBCStoreParameters get(String name) throws DataException {
374 378
        JDBCStoreParameters params = this.getOpenParameters();
375 379
        params.setTable(name);
376 380
        return params;
......
380 384
    public SQLBuilder createSQLBuilder() {
381 385
        return this.getHelper().createSQLBuilder();
382 386
    }
383
        
387

  
388
    @Override
389
    public ResourcesStorage getResourcesStorage(DataStore dataStore) {
390
        if( this.resourcesStorage==null ) {
391
            try {
392
                List<JDBCStoreParameters> tables = this.list();
393
                for (JDBCStoreParameters params : tables) {
394
                    String theTableName = params.getTable();
395
                    if (StringUtils.equals(theTableName, RESOURCES_TABLE_NAME)) {
396
                        this.resourcesStorage = new JDBCResourcesStorage(
397
                                params,
398
                                dataStore.getName()
399
                        );
400
                        return this.resourcesStorage;
401
                    }
402
                }
403
                this.resourcesStorage = new EmptyResourcesStorage();
404
            } catch (Throwable ex) {
405
                LOG.warn("Can't retrieve reources storage from table '" + RESOURCES_TABLE_NAME + "' in '"+this.getParameters().getUrl()+"'.", ex);
406
            }
407
        }
408
        return this.resourcesStorage;
409
    }
384 410
}

Also available in: Unified diff