=== added file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/SchemaController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/SchemaController.java 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/SchemaController.java 2014-02-13 07:03:09 +0000 @@ -0,0 +1,83 @@ +package org.hisp.dhis.api.controller; + +/* + * Copyright (c) 2004-2013, University of Oslo + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the HISP project nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +import com.google.common.collect.Maps; +import org.hisp.dhis.common.IdentifiableObject; +import org.hisp.dhis.dxf2.metadata.ExchangeClasses; +import org.hisp.dhis.dxf2.utils.JacksonUtils; +import org.hisp.dhis.system.util.ReflectionUtils; +import org.springframework.http.HttpStatus; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.client.HttpClientErrorException; + +import java.io.IOException; +import java.io.OutputStream; +import java.util.Map; + +/** + * @author Morten Olav Hansen + */ +@Controller +@RequestMapping( value = "", method = RequestMethod.GET ) +public class SchemaController +{ + @RequestMapping( value = { "/schemas", "/schemas.json" }, method = RequestMethod.GET ) + public void getTypesJson( OutputStream outputStream ) throws IOException + { + Map> output = Maps.newHashMap(); + + for ( Class key : ExchangeClasses.getAllExportMap().keySet() ) + { + Map classMap = ReflectionUtils.getJacksonClassMap( key ); + output.put( ExchangeClasses.getAllExportMap().get( key ), classMap ); + } + + JacksonUtils.toJson( outputStream, output ); + } + + @RequestMapping( value = { "/schemas/{type}", "/schemas/{type}.json" }, method = RequestMethod.GET ) + public void getTypeJson( @PathVariable String type, OutputStream outputStream ) throws IOException + { + for ( Class key : ExchangeClasses.getAllExportMap().keySet() ) + { + if ( ExchangeClasses.getAllExportMap().get( key ).equals( type ) ) + { + Map classMap = ReflectionUtils.getJacksonClassMap( key ); + JacksonUtils.toJson( outputStream, classMap ); + return; + } + } + + throw new HttpClientErrorException( HttpStatus.NOT_FOUND ); + } +} === removed file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/TypeController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/TypeController.java 2014-02-13 05:51:55 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/TypeController.java 1970-01-01 00:00:00 +0000 @@ -1,83 +0,0 @@ -package org.hisp.dhis.api.controller; - -/* - * Copyright (c) 2004-2013, University of Oslo - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * Neither the name of the HISP project nor the names of its contributors may - * be used to endorse or promote products derived from this software without - * specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR - * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -import com.google.common.collect.Maps; -import org.hisp.dhis.common.IdentifiableObject; -import org.hisp.dhis.dxf2.metadata.ExchangeClasses; -import org.hisp.dhis.dxf2.utils.JacksonUtils; -import org.hisp.dhis.system.util.ReflectionUtils; -import org.springframework.http.HttpStatus; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.client.HttpClientErrorException; - -import java.io.IOException; -import java.io.OutputStream; -import java.util.Map; - -/** - * @author Morten Olav Hansen - */ -@Controller -@RequestMapping( value = "", method = RequestMethod.GET ) -public class TypeController -{ - @RequestMapping( value = { "/types", "/types.json" }, method = RequestMethod.GET ) - public void getTypesJson( OutputStream outputStream ) throws IOException - { - Map> output = Maps.newHashMap(); - - for ( Class key : ExchangeClasses.getAllExportMap().keySet() ) - { - Map classMap = ReflectionUtils.getJacksonClassMap( key ); - output.put( ExchangeClasses.getAllExportMap().get( key ), classMap ); - } - - JacksonUtils.toJson( outputStream, output ); - } - - @RequestMapping( value = { "/types/{type}", "/types/{type}.json" }, method = RequestMethod.GET ) - public void getTypeJson( @PathVariable String type, OutputStream outputStream ) throws IOException - { - for ( Class key : ExchangeClasses.getAllExportMap().keySet() ) - { - if ( ExchangeClasses.getAllExportMap().get( key ).equals( type ) ) - { - Map classMap = ReflectionUtils.getJacksonClassMap( key ); - JacksonUtils.toJson( outputStream, classMap ); - return; - } - } - - throw new HttpClientErrorException( HttpStatus.NOT_FOUND ); - } -}