← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 4523: Implemented getDataElementByCode

 

------------------------------------------------------------
revno: 4523
committer: Bob Jolliffe bobjolliffe@xxxxxxxxx
branch nick: dhis2
timestamp: Tue 2011-09-06 00:27:47 +0100
message:
  Implemented getDataElementByCode
modified:
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java
  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java
  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java
  dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java
  dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportDataValue.hbm.xml
  dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportObject.hbm.xml


--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk

Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java	2011-07-21 20:33:57 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java	2011-09-05 23:27:47 +0000
@@ -92,6 +92,14 @@
     DataElement getDataElement( String uuid );
 
     /**
+     * Returns the DataElement with the given code.
+     *
+     * @param code the code.
+     * @return the DataElement with the given code, or null if no match.
+     */
+    DataElement getDataElementByCode( String code );
+
+    /**
      * Returns a DataElement with a given name.
      * 
      * @param name the name of the DataElement to return.

=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java	2011-07-21 20:33:57 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java	2011-09-05 23:27:47 +0000
@@ -82,13 +82,21 @@
 
     /**
      * Returns the DataElement with the given UUID.
-     * 
+     *
      * @param uuid the UUID.
      * @return the DataElement with the given UUID, or null if no match.
      */
     DataElement getDataElement( String uuid );
 
     /**
+     * Returns the DataElement with the given code.
+     *
+     * @param code the code.
+     * @return the DataElement with the given code, or null if no match.
+     */
+    DataElement getDataElementByCode( String code );
+
+    /**
      * Returns a DataElement with a given name.
      * 
      * @param name the name of the DataElement to return.

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java	2011-07-21 20:33:57 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java	2011-09-05 23:27:47 +0000
@@ -140,6 +140,11 @@
         return i18n( i18nService, dataElementStore.getDataElement( uuid ) );
     }
 
+    public DataElement getDataElementByCode( String code )
+    {
+        return i18n( i18nService, dataElementStore.getDataElementByCode( code ) );
+    }
+
     public Collection<DataElement> getAllDataElements()
     {
         return i18n( i18nService, dataElementStore.getAllDataElements() );

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java	2011-07-22 20:43:53 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java	2011-09-05 23:27:47 +0000
@@ -113,6 +113,16 @@
         return (DataElement) criteria.uniqueResult();
     }
 
+    public DataElement getDataElementByCode( String code )
+    {
+        Session session = sessionFactory.getCurrentSession();
+
+        Criteria criteria = session.createCriteria( DataElement.class );
+        criteria.add( Restrictions.eq( "code", code ) );
+
+        return (DataElement) criteria.uniqueResult();
+    }
+
     public DataElement getDataElementByName( String name )
     {
         Session session = sessionFactory.getCurrentSession();
@@ -154,16 +164,6 @@
         return (DataElement) criteria.uniqueResult();
     }
 
-    public DataElement getDataElementByCode( String code )
-    {
-        Session session = sessionFactory.getCurrentSession();
-
-        Criteria criteria = session.createCriteria( DataElement.class );
-        criteria.add( Restrictions.eq( "code", code ) );
-
-        return (DataElement) criteria.uniqueResult();
-    }
-
     public Collection<DataElement> getAllDataElements()
     {
         return getAll();

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java'
--- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java	2011-04-24 15:50:02 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataelement/DataElementServiceTest.java	2011-09-05 23:27:47 +0000
@@ -173,6 +173,32 @@
     }
 
     @Test
+    public void testGetDataElementByCode()
+        throws Exception
+    {
+        DataElement dataElementA = createDataElement( 'A' );
+        DataElement dataElementB = createDataElement( 'B' );
+        dataElementA.setCode( "codeA");
+        dataElementB.setCode( "codeB");
+
+        int idA = dataElementService.addDataElement( dataElementA );
+        int idB = dataElementService.addDataElement( dataElementB );
+
+        dataElementA = dataElementService.getDataElementByCode( "codeA" );
+        assertNotNull( dataElementA );
+        assertEquals( idA, dataElementA.getId() );
+        assertEquals( "DataElementA", dataElementA.getName() );
+
+        dataElementB = dataElementService.getDataElementByCode( "codeB" );
+        assertNotNull( dataElementB );
+        assertEquals( idB, dataElementB.getId() );
+        assertEquals( "DataElementB", dataElementB.getName() );
+
+        DataElement dataElementC = dataElementService.getDataElementByCode( "codeC" );
+        assertNull( dataElementC );
+    }
+
+    @Test
     public void testGetDataElementByName()
         throws Exception
     {

=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportDataValue.hbm.xml'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportDataValue.hbm.xml	2011-05-28 21:25:46 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportDataValue.hbm.xml	2011-09-05 23:27:47 +0000
@@ -1,27 +1,17 @@
-<?xml version="1.0"?>
-<!DOCTYPE hibernate-mapping PUBLIC
-  "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
-  "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd";>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd";>
 <hibernate-mapping>
   <class name="org.hisp.dhis.importexport.ImportDataValue" table="importdatavalue">
-
     <composite-id>
-      <key-property column="dataelementid" name="dataElementId" />
-      <key-property column="categoryoptioncomboid" name="categoryOptionComboId" />
-      <key-property column="periodid" name="periodId" />
-      <key-property column="sourceid" name="sourceId" />
+      <key-property column="dataelementid" name="dataElementId"/>
+      <key-property column="categoryoptioncomboid" name="categoryOptionComboId"/>
+      <key-property column="periodid" name="periodId"/>
+      <key-property column="sourceid" name="sourceId"/>
     </composite-id>
-
-    <property column="value" name="value" />
-
-    <property column="storedby" name="storedBy" />
-
-    <property column="lastupdated" name="timestamp" type="date" />
-
-    <property column="comment" name="comment" type="text" />
-
-    <property column="status" name="status" />
-
+    <property column="value" name="value"/>
+    <property column="storedby" name="storedBy"/>
+    <property column="lastupdated" name="timestamp" type="date"/>
+    <property column="comment" name="comment" type="text"/>
+    <property column="status" name="status"/>
   </class>
 </hibernate-mapping>

=== modified file 'dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportObject.hbm.xml'
--- dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportObject.hbm.xml	2011-05-29 11:10:20 +0000
+++ dhis-2/dhis-services/dhis-service-importexport/src/main/resources/org/hisp/dhis/importexport/hibernate/ImportObject.hbm.xml	2011-09-05 23:27:47 +0000
@@ -1,24 +1,14 @@
-<?xml version="1.0"?>
-<!DOCTYPE hibernate-mapping PUBLIC
-  "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
-  "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd";>
-
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd";>
 <hibernate-mapping>
   <class name="org.hisp.dhis.importexport.ImportObject" table="importobject">
-
     <id column="importobjectid" name="id">
-      <generator class="native" />
+      <generator class="native"/>
     </id>
-
-    <property column="status" name="status" />
-
-    <property column="classname" name="className" />
-
-    <property column="groupmembertype" name="groupMemberType" />
-
-    <property column="object" length="65535" name="object" type="serializable" />
-
-    <property column="compareobject" length="65535" name="compareObject" type="serializable" />
-
+    <property column="status" name="status"/>
+    <property column="classname" name="className"/>
+    <property column="groupmembertype" name="groupMemberType"/>
+    <property column="object" length="65535" name="object" type="serializable"/>
+    <property column="compareobject" length="65535" name="compareObject" type="serializable"/>
   </class>
 </hibernate-mapping>