Method from org.apache.geronimo.kernel.Jsr77Naming Detail: |
public AbstractName createChildName(AbstractName parentAbstractName,
String name,
String type) {
return createChildName(parentAbstractName, parentAbstractName.getArtifact(), name, type);
}
|
public AbstractName createChildName(AbstractName parentAbstractName,
Artifact artifact,
String name,
String type) {
if (name == null) {
throw new NullPointerException("No name supplied");
}
if (type == null) {
throw new NullPointerException("No type supplied");
}
Map nameMap = new HashMap(parentAbstractName.getName());
String parentType = (String) nameMap.remove(J2EE_TYPE);
String parentName = (String) nameMap.remove(J2EE_NAME);
if (parentType == null) {
throw new IllegalArgumentException("parent name must have a j2eeType name component");
}
if (INVALID_GENERIC_PARENT_TYPE.equals(parentType)) {
throw new IllegalArgumentException("You can't create a child of a generic typed gbean");
}
nameMap.put(parentType, parentName);
nameMap.put(J2EE_TYPE, type);
nameMap.put(J2EE_NAME, name);
return new AbstractName(artifact,
nameMap,
createObjectName(nameMap));
}
|
public static ObjectName createObjectName(Map nameMap) {
Hashtable objectNameMap = new Hashtable(nameMap);
String type = (String) nameMap.get(J2EE_TYPE);
if ("JVM".equals(type)) {
objectNameMap.keySet().retainAll(Arrays.asList(new String[] {J2EE_TYPE, J2EE_NAME, "J2EEServer"}));
objectNameMap.put("J2EEServer", DEFAULT_SERVER_NAME);
} else if ("J2EEDomain".equals(type)) {
//special case J2EEDomain gbean
objectNameMap.clear();
objectNameMap.put(J2EE_TYPE, "J2EEDomain");
objectNameMap.put(J2EE_NAME, DEFAULT_DOMAIN_NAME);
} else if ("J2EEServer".equals(type)) {
//special case J2EEServer gbean
objectNameMap.clear();
objectNameMap.put(J2EE_TYPE, "J2EEServer");
objectNameMap.put(J2EE_NAME, DEFAULT_SERVER_NAME);
} else {
objectNameMap.put("J2EEServer", DEFAULT_SERVER_NAME);
}
ObjectName moduleObjectName;
try {
moduleObjectName = ObjectName.getInstance(DEFAULT_DOMAIN_NAME, objectNameMap);
} catch (MalformedObjectNameException e) {
throw new AssertionError(e);
}
return moduleObjectName;
} Deprecated! objectnames - are being removed
|
public AbstractName createRootName(Artifact artifact,
String name,
String type) {
Map nameMap = new HashMap();
nameMap.put(J2EE_TYPE, type);
nameMap.put(J2EE_NAME, name);
return new AbstractName(artifact,
nameMap,
createObjectName(nameMap));
}
|
public AbstractName createSiblingName(AbstractName parentAbstractName,
String name,
String type) {
Map nameMap = new HashMap(parentAbstractName.getName());
nameMap.put(J2EE_TYPE, type);
nameMap.put(J2EE_NAME, name);
return new AbstractName(parentAbstractName.getArtifact(),
nameMap,
createObjectName(nameMap));
}
|