public String toString() { return getName()+", "+getTranslatorName()+", "+getConnectionJndiName(); //$NON-NLS-1$ //$NON-NLS-2$ } }
public SourceMappingMetadata addSourceMapping(String name, String translatorName, String connJndiName) { return this.sources.put(name, new SourceMappingMetadata(name, translatorName, connJndiName)); }
private String getSourceName(String factoryName, ModelMetaData model) { for (SourceMappingMetadata source:model.getSources().values()) { String jndiName = source.getConnectionJndiName(); if (jndiName == null) { continue; } jndiName = stripContext(jndiName); if (factoryName.equals(jndiName)) { return source.getName(); } } return null; }
public SourceMappingMetadata unwrap(ModelNode node) { if (node == null) { return null; } SourceMappingMetadata source = new SourceMappingMetadata(); if (node.has(SOURCE_NAME)) { source.setName(node.get(SOURCE_NAME).asString()); } if (node.has(JNDI_NAME)) { source.setConnectionJndiName(node.get(JNDI_NAME).asString()); } if (node.has(TRANSLATOR_NAME)) { source.setTranslatorName(node.get(TRANSLATOR_NAME).asString()); } return source; }
@Override public String getSourceConnectionJndiName(String sourceName) { SourceMappingMetadata s = this.sources.get(sourceName); if (s == null) { return null; } return s.getConnectionJndiName(); }
protected List<ConnectorManager> getConnectorManagers(final ModelMetaData model, final ConnectorManagerRepository cmr) { if (model.isSource()) { Collection<SourceMappingMetadata> mappings = model.getSources().values(); List<ConnectorManager> result = new ArrayList<ConnectorManager>(mappings.size()); for (SourceMappingMetadata mapping:mappings) { result.add(cmr.getConnectorManager(mapping.getName())); } return result; } //return a single null to give us something to loop over return Collections.singletonList(null); }
@Override public void updateSource(String vdbName, String vdbVersion, String sourceName, String translatorName, String dsName) throws AdminException { VDBMetaData vdb = checkVDB(vdbName, vdbVersion); synchronized(vdb) { for (ModelMetaData m : vdb.getModelMetaDatas().values()) { SourceMappingMetadata mapping = m.getSourceMapping(sourceName); if (mapping != null) { mapping.setTranslatorName(translatorName); mapping.setConnectionJndiName(dsName); } } } }
@Override public String getSourceTranslatorName(String sourceName) { SourceMappingMetadata s = this.sources.get(sourceName); if (s == null) { return null; } return s.getTranslatorName(); }
/** * @return true if the datasource is new to the vdb * @throws AdminProcessingException */ public boolean updateSource(String vdbName, String vdbVersion, SourceMappingMetadata mapping, boolean replace) throws AdminProcessingException { String dsName = stripContext(mapping.getConnectionJndiName()); VDBMetaData vdb = getVDBRepository().getLiveVDB(vdbName, vdbVersion); if (vdb == null || vdb.getStatus() == Status.FAILED) { return false; } synchronized (vdb) { ConnectorManagerRepository cmr = vdb.getAttachment(ConnectorManagerRepository.class); ConnectorManager existing = cmr.getConnectorManager(mapping.getName()); try { cmr.createConnectorManager(vdb, cmr.getProvider(), mapping, replace); } catch (TeiidException e) { throw new AdminProcessingException(RuntimePlugin.Event.TEIID40033, e); } if (mapping.getConnectionJndiName() != null && (existing == null || !dsName.equals(existing.getConnectionName()))) { List<Runnable> runnables = new ArrayList<Runnable>(); resourceAdded(dsName, runnables, vdb); return true; } return false; } }
public SourceMappingMetadata unwrap(ModelNode node) { if (node == null) { return null; } SourceMappingMetadata source = new SourceMappingMetadata(); if (node.has(SOURCE_NAME)) { source.setName(node.get(SOURCE_NAME).asString()); } if (node.has(JNDI_NAME)) { source.setConnectionJndiName(node.get(JNDI_NAME).asString()); } if (node.has(TRANSLATOR_NAME)) { source.setTranslatorName(node.get(TRANSLATOR_NAME).asString()); } return source; }
@Override public String getSourceConnectionJndiName(String sourceName) { SourceMappingMetadata s = this.sources.get(sourceName); if (s == null) { return null; } return s.getConnectionJndiName(); }
void validateDataSources(VDBMetaData vdb) { ConnectorManagerRepository cmr = vdb.getAttachment(ConnectorManagerRepository.class); for (ModelMetaData model:vdb.getModelMetaDatas().values()) { if (model.isSource()) { Collection<SourceMappingMetadata> mappings = model.getSourceMappings(); for (SourceMappingMetadata mapping:mappings) { ConnectorManager cm = cmr.getConnectorManager(mapping.getName()); if (cm != null) { String msg = cm.getStausMessage(); if (msg != null && msg.length() > 0) { model.addRuntimeError(msg); model.setMetadataStatus(Model.MetadataStatus.FAILED); LogManager.logInfo(LogConstants.CTX_RUNTIME, msg); } } } } } }
SourceMappingMetadata mapping = m.getSourceMapping(sourceName); if (mapping != null) { mapping.setTranslatorName(translatorName); mapping.setConnectionJndiName(dsName); SourceMappingMetadata mapping = m.getSourceMapping(sourceName); if (mapping != null) { mapping.setTranslatorName(previousTranslatorName); mapping.setConnectionJndiName(previousDsName);
@Override public String getSourceTranslatorName(String sourceName) { SourceMappingMetadata s = this.sources.get(sourceName); if (s == null) { return null; } return s.getTranslatorName(); }
public String toString() { return getName()+", "+getTranslatorName()+", "+getConnectionJndiName(); //$NON-NLS-1$ //$NON-NLS-2$ } }
String previousDsName = source.getConnectionJndiName(); boolean success = false; try {
public SourceMappingMetadata addSourceMapping(String name, String translatorName, String connJndiName) { return this.sources.put(name, new SourceMappingMetadata(name, translatorName, connJndiName)); }
public void createConnectorManager( VDBMetaData deployment, ExecutionFactoryProvider provider, SourceMappingMetadata source, boolean replace) throws ConnectorManagerException { String name = source.getTranslatorName(); String connection = source.getConnectionJndiName(); createConnectorManager(source.getName(), name, connection, provider, replace); }
public boolean dataSourceReplaced(String vdbName, String vdbVersion, String modelName, String sourceName, String translatorName, String dsName) throws AdminProcessingException { return updateSource(vdbName, vdbVersion, new SourceMappingMetadata(sourceName, translatorName, dsName), true); }
public ModelNode wrap(SourceMappingMetadata source, ModelNode node) { if (source == null) { return null; } node.get(SOURCE_NAME).set(source.getName()); if (source.getConnectionJndiName() != null) { node.get(JNDI_NAME).set(source.getConnectionJndiName()); } node.get(TRANSLATOR_NAME).set(source.getTranslatorName()); return node; }