package com.mossle.spi.store; import javax.activation.DataSource; import com.mossle.api.store.StoreDTO; import com.mossle.core.store.StoreHelper; import com.mossle.core.store.StoreResult; public class LocalInternalStoreConnector implements InternalStoreConnector { private StoreHelper storeHelper; public StoreDTO saveStore(String model, DataSource dataSource, String tenantId) throws Exception { StoreResult storeResult = storeHelper.saveStore(tenantId + "/" + model, dataSource); return this.convertStoreDto(storeResult); } public StoreDTO saveStore(String model, String key, DataSource dataSource, String tenantId) throws Exception { StoreResult storeResult = storeHelper.saveStore(tenantId + "/" + model, key, dataSource); return this.convertStoreDto(storeResult); } public StoreDTO getStore(String model, String key, String tenantId) throws Exception { StoreResult storeResult = storeHelper.getStore(tenantId + "/" + model, key); if (storeResult == null) { return null; } return this.convertStoreDto(storeResult); } public void removeStore(String model, String key, String tenantId) throws Exception { storeHelper.removeStore(tenantId + "/" + model, key); } public void mkdir(String path) { storeHelper.mkdir(path); } // ~ public StoreDTO convertStoreDto(StoreResult storeResult) { StoreDTO storeDto = new StoreDTO(); storeDto.setModel(storeResult.getModel()); storeDto.setKey(storeResult.getKey()); storeDto.setDataSource(storeResult.getDataSource()); storeDto.setDisplayName(storeResult.getKey()); return storeDto; } public void setStoreHelper(StoreHelper storeHelper) { this.storeHelper = storeHelper; } }