Пример #1
0
 /**
  * Adds the parent.
  *
  * @param linkedEntity the linked entity
  * @return the linked entity
  * @throws RuntimeException the runtime exception
  */
 protected LinkedEntity addParent(LinkedEntity linkedEntity) throws RuntimeException {
   if (!getParentClassList().contains(linkedEntity.getClass())) {
     String msg = "";
     if (!getParentClassList().isEmpty()) {
       msg = getParentClassList() + " wird als Parameter erwartet.";
     }
     throw new RuntimeException(
         getClass().getSimpleName()
             + "("
             + getName()
             + ").addParent("
             + linkedEntity.getClass().getSimpleName()
             + "("
             + linkedEntity.getName()
             + ")) nicht moeglich. "
             + msg);
   }
   if (parentList.containsKey(linkedEntity.getId())) {
     throw new RuntimeException(
         getClass().getSimpleName()
             + "("
             + getName()
             + ").addParent("
             + linkedEntity.getClass().getSimpleName()
             + "("
             + linkedEntity.getName()
             + ")) nicht moeglich. Id bereits vorhanden.");
   } else {
     Integer maxParentListSize = getMaxParentListSize();
     if (parentList.size() < maxParentListSize) {
       this.parentList.put(linkedEntity.getId(), linkedEntity);
       modifiedDate = new Date();
     } else {
       throw new RuntimeException(
           getClass().getSimpleName()
               + "("
               + getName()
               + ").addParent("
               + linkedEntity.getClass().getSimpleName()
               + "("
               + linkedEntity.getName()
               + ")) nicht moeglich. Parentlist.size="
               + parentList.size()
               + ", maxParentListSize="
               + maxParentListSize);
     }
   }
   return this;
 }
Пример #2
0
 /**
  * Adds the child.
  *
  * @param entity the entity
  * @return the linked entity
  * @throws RuntimeException the runtime exception
  */
 public LinkedEntity addChild(LinkedEntity entity) throws RuntimeException {
   if (!getChildClassList().contains(entity.getClass())) {
     throw new RuntimeException(
         getClass().getSimpleName()
             + "("
             + getName()
             + ").addChild("
             + entity.getClass().getSimpleName()
             + "("
             + entity.getName()
             + ")) nicht moeglich. "
             + getChildClassList()
             + " wird als Parameter erwartet.");
   }
   if (childList.containsKey(entity.getId())) {
     throw new RuntimeException(
         getClass().getSimpleName()
             + "("
             + getName()
             + ").addChild("
             + entity.getClass().getSimpleName()
             + "("
             + entity.getName()
             + ")) nicht moeglich. Id bereits vorhanden.");
   } else {
     Integer maxChildListSize = this.getMaxChildListSize(entity.getClass());
     if (getChildListForClass(entity.getClass()).size() < maxChildListSize) {
       this.childList.put(entity.getId(), entity);
       entity.addParent(this);
       modifiedDate = new Date();
     } else {
       throw new RuntimeException(
           getClass().getSimpleName()
               + "("
               + getName()
               + ").addChild("
               + entity.getClass().getSimpleName()
               + "("
               + entity.getName()
               + ")) nicht moeglich. Childlist.size="
               + childList.size()
               + ", maxChildListSize="
               + maxChildListSize);
     }
   }
   return this;
 }