catching unique violation ant convert to DuplicateKeyException
refactoring methods names from createEntity to factoryEntity
added reference to object properties when exists