290 **/ |
290 **/ |
291 public static ObjectName insertPath(String path, ObjectName to) { |
291 public static ObjectName insertPath(String path, ObjectName to) { |
292 if (path == null || to == null) |
292 if (path == null || to == null) |
293 throw new IllegalArgumentException("Null argument"); |
293 throw new IllegalArgumentException("Null argument"); |
294 checkTrailingSlashes(path); |
294 checkTrailingSlashes(path); |
295 try { |
295 String prefix = path; |
296 String prefix = path; |
296 if (!prefix.equals("")) |
297 if (!prefix.equals("")) prefix = |
297 prefix = ObjectNameRouter.normalizeNamespacePath( |
298 ObjectNameRouter.normalizeNamespacePath( |
|
299 prefix + NAMESPACE_SEPARATOR,false,false,false); |
298 prefix + NAMESPACE_SEPARATOR,false,false,false); |
300 return to.withDomain( |
299 return to.withDomain( |
301 ObjectNameRouter.normalizeDomain( |
300 ObjectNameRouter.normalizeDomain( |
302 prefix+to.getDomain(),false)); |
301 prefix+to.getDomain(),false)); |
303 } catch (MalformedObjectNameException x) { |
|
304 throw new IllegalArgumentException(path+": "+x,x); |
|
305 } |
|
306 } |
302 } |
307 |
303 |
308 /** |
304 /** |
309 * Returns the normalized name space path of the name space expected to |
305 * Returns the normalized name space path of the name space expected to |
310 * contain {@code ObjectName}. |
306 * contain {@code ObjectName}. |