=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/option/OptionSet.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/option/OptionSet.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/option/OptionSet.java 2014-06-07 13:35:27 +0000 @@ -47,13 +47,13 @@ /** * @author Lars Helge Overland */ -@JacksonXmlRootElement( localName = "optionSet", namespace = DxfNamespaces.DXF_2_0) +@JacksonXmlRootElement( localName = "optionSet", namespace = DxfNamespaces.DXF_2_0 ) public class OptionSet extends BaseIdentifiableObject { private static final Pattern OPTION_PATTERN = Pattern.compile( "\\[(.*)\\]" ); - private List options = new ArrayList(); + private List options = new ArrayList<>(); /** * Indicating version number. @@ -75,9 +75,9 @@ } @JsonProperty - @JsonView( {DetailedView.class, ExportView.class} ) - @JacksonXmlElementWrapper( localName = "options", namespace = DxfNamespaces.DXF_2_0) - @JacksonXmlProperty( localName = "option", namespace = DxfNamespaces.DXF_2_0) + @JsonView( { DetailedView.class, ExportView.class } ) + @JacksonXmlElementWrapper( localName = "options", namespace = DxfNamespaces.DXF_2_0 ) + @JacksonXmlProperty( localName = "option", namespace = DxfNamespaces.DXF_2_0 ) public List getOptions() { return options; === modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/filter/DefaultFilterService.java' --- dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/filter/DefaultFilterService.java 2014-06-07 06:08:25 +0000 +++ dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/filter/DefaultFilterService.java 2014-06-07 13:35:27 +0000 @@ -125,7 +125,7 @@ return collectionNode; } - @SuppressWarnings("unchecked") + @SuppressWarnings( "unchecked" ) private ComplexNode buildObjectOutput( Map fieldMap, Object object ) { if ( object == null ) @@ -174,11 +174,19 @@ for ( Object collectionObject : (Collection) returnValue ) { - ComplexNode node = buildObjectOutput( map, collectionObject ); + if ( map.isEmpty() ) + { + SimpleNode simpleNode = new SimpleNode( property.getName(), collectionObject ); + collectionNode.addChild( simpleNode ); + } + else + { + ComplexNode node = buildObjectOutput( map, collectionObject ); - if ( !node.getChildren().isEmpty() ) - { - collectionNode.addChild( node ); + if ( !node.getChildren().isEmpty() ) + { + collectionNode.addChild( node ); + } } } } @@ -367,7 +375,7 @@ return complexNode; } - @SuppressWarnings("unchecked") + @SuppressWarnings( "unchecked" ) private boolean evaluateWithFilters( T object, Filters filters ) { Schema schema = schemaService.getDynamicSchema( object.getClass() );