}
if (entityRelationDAOs != null)
{
for (EntityRelationDAO entityRelationDAO: entityRelationDAOs)
{
SecurityEntityRelationType relationType = entityRelationDAO.getRelationType();
if (this.entityDAOs.get(relationType.getFromEntityType()) == null || this.entityDAOs.get(relationType.getToEntityType()) == null)
{
throw new IllegalArgumentException("Missing EntityDAO for EntityRelationDAO fromEntityType: "+relationType.getFromEntityType() +
" and/or toEntityType: "+relationType.getToEntityType());
}
this.entityRelationDAOs.put(new SecurityEntityRelationTypeImpl(relationType.getRelationType(), relationType.getFromEntityType(), relationType.getToEntityType()),
entityRelationDAO);
this.entityRelationTypes.get(relationType.getFromEntityType()).add(relationType);
this.entityRelationTypes.get(relationType.getToEntityType()).add(relationType);
}
}
}