Ejemplo n.º 1
0
 /**
  * Rename an object.
  *
  * @param obj the object to rename
  * @param newName the new name
  */
 public void rename(SchemaObject obj, String newName) {
   DbObjectType type = obj.getType();
   HashMap<String, SchemaObject> map = getMap(type);
   if (SysProperties.CHECK) {
     if (!map.containsKey(obj.getName())) {
       DbException.throwInternalError("not found: " + obj.getName());
     }
     if (obj.getName().equals(newName) || map.containsKey(newName)) {
       DbException.throwInternalError("object already exists: " + newName);
     }
   }
   obj.checkRename();
   map.remove(obj.getName());
   freeUniqueName(obj.getName());
   obj.rename(newName);
   map.put(newName, obj);
   freeUniqueName(newName);
 }