}
}
}
}
public NewObjectPersister recordNewObject(Persistable object) throws Exception {
ObjectId existingId = object.getId();
Object className = existingId.source instanceof ClassDataSource ?
object.getId().subObjectId : object.get("id");
if(!(className instanceof String) || ((String)className).startsWith("s$")){
className = (Math.random() + "").substring(2);
}
object.delete("id");
existingId.assignId(this, (String) className);
Object superType = object.get("extends");
final DataSource newSource;
if(((PersistableClass) object).persist){
newSource = DataSourceManager.createNewSource((String) className,superType instanceof Persistable ? ((Persistable) superType).getId().subObjectId : "Object",(PersistableClass) object);
}else{