/** * generates a new unique ConnectorID for the given domain and connector. * * A {@link UUID} is used as unique string-identifier. */ public static ConnectorId generate(String domainType, String connectorType) { String instanceId = UUID.randomUUID().toString(); return new ConnectorId(domainType, connectorType, instanceId); }
/** * parses a ConnectorId object from a Map-representation used in * {@link org.openengsb.core.api.persistence.ConfigPersistenceService} */ public static ConnectorId fromMetaData(Map<String, String> metaData) { return new ConnectorId(metaData.get(Constants.DOMAIN_KEY), metaData.get(Constants.CONNECTOR_KEY), metaData.get(Constants.ID_KEY)); }
/** * parses a connectorID from a string-representation of the format: * * "<domainType>+<connectorType>+<instanceId>" * * Example: "scm+git+projectx-main-repo" */ public static ConnectorId fromFullId(String fullId) { Scanner s = new Scanner(fullId); s.useDelimiter("\\+"); String domain = s.next(); String connector = s.next(); String instanceId = s.next(); if (s.hasNext()) { s.useDelimiter("\\\n"); instanceId += s.next(); } return new ConnectorId(domain, connector, instanceId); }