=== modified file 'dhis-2/dhis-services/dhis-service-i18n/src/main/java/org/hisp/dhis/i18n/I18nManager.java' --- dhis-2/dhis-services/dhis-service-i18n/src/main/java/org/hisp/dhis/i18n/I18nManager.java 2013-08-23 16:05:01 +0000 +++ dhis-2/dhis-services/dhis-service-i18n/src/main/java/org/hisp/dhis/i18n/I18nManager.java 2013-11-20 13:10:13 +0000 @@ -41,8 +41,8 @@ I18n getI18n( Class clazz ) throws I18nManagerException; - public I18n getI18n( Class clazz, Locale locale ) throws I18nManagerException; - + I18n getI18n( Class clazz, Locale locale ) throws I18nManagerException; + I18n getI18n( String clazzName ) throws I18nManagerException; I18nFormat getI18nFormat() throws I18nManagerException; === added file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/I18nController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/I18nController.java 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/I18nController.java 2013-11-20 13:10:13 +0000 @@ -0,0 +1,50 @@ +package org.hisp.dhis.api.controller; + +import com.fasterxml.jackson.core.type.TypeReference; +import org.hisp.dhis.dxf2.utils.JacksonUtils; +import org.hisp.dhis.i18n.I18n; +import org.hisp.dhis.i18n.I18nManager; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import java.io.InputStream; +import java.io.OutputStream; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @author Morten Olav Hansen + */ +@Controller +@RequestMapping( value = "/i18n" ) +public class I18nController +{ + @Autowired + private I18nManager i18nManager; + + @RequestMapping( method = RequestMethod.POST ) + public void postI18n( OutputStream outputStream, InputStream inputStream ) throws Exception + { + I18n i18n = i18nManager.getI18n( "org.hisp.dhis" ); + Map output = new HashMap(); + + List input = JacksonUtils.getJsonMapper().readValue( inputStream, new TypeReference>() + { + } ); + + for ( String key : input ) + { + String value = i18n.getString( key ); + + if ( value != null ) + { + output.put( key, value ); + } + } + + JacksonUtils.getJsonMapper().writeValue( outputStream, output ); + } +}