=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/GenericStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/GenericStore.java 2015-11-19 07:29:54 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/GenericStore.java 2015-11-20 02:38:53 +0000 @@ -140,4 +140,6 @@ List getAttributeValueByAttributeAndValue( Attribute attribute, String value );

boolean isAttributeValueUnique( P object, AttributeValue attributeValue ); + +

boolean isAttributeValueUnique( P object, Attribute attribute, String value ); } === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/IdentifiableObjectManager.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/IdentifiableObjectManager.java 2015-11-19 07:29:54 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/IdentifiableObjectManager.java 2015-11-20 02:38:53 +0000 @@ -157,6 +157,8 @@ boolean isAttributeValueUnique( Class klass, T object, AttributeValue attributeValue ); + boolean isAttributeValueUnique( Class klass, T object, Attribute attribute, String value ); + // ------------------------------------------------------------------------- // NO ACL // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/DefaultIdentifiableObjectManager.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/DefaultIdentifiableObjectManager.java 2015-11-19 07:29:54 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/DefaultIdentifiableObjectManager.java 2015-11-20 02:38:53 +0000 @@ -1007,6 +1007,13 @@ return store != null && store.isAttributeValueUnique( object, attributeValue ); } + @Override + public boolean isAttributeValueUnique( Class klass, T object, Attribute attribute, String value ) + { + GenericIdentifiableObjectStore store = getIdentifiableObjectStore( klass ); + return store != null && store.isAttributeValueUnique( object, attribute, value ); + } + //-------------------------------------------------------------------------- // Supportive methods //-------------------------------------------------------------------------- === modified file 'dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java' --- dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java 2015-11-19 07:29:54 +0000 +++ dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java 2015-11-20 02:38:53 +0000 @@ -583,6 +583,13 @@ return values.isEmpty() || (object != null && values.size() == 1 && object.getAttributeValues().contains( values.get( 0 ) )); } + @Override + public

boolean isAttributeValueUnique( P object, Attribute attribute, String value ) + { + List values = getAttributeValueByAttributeAndValue( attribute, value ); + return values.isEmpty() || (object != null && values.size() == 1 && object.getAttributeValues().contains( values.get( 0 ) )); + } + //---------------------------------------------------------------------------------------------------------------- // Helpers //----------------------------------------------------------------------------------------------------------------