private void updateBundleDescriptorContent ( ) throws CmsXmlException { if ( m_descContent . hasLocale ( Descriptor . LOCALE ) ) { m_descContent . removeLocale ( Descriptor . LOCALE ) ; } m_descContent . addLocale ( m_cms , Descriptor . LOCALE ) ; int i = 0 ; Property < Object > descProp ; String desc ; Property < Object > defaultValueProp ; String defaultValue ; Map < String , Item > keyItemMap = getKeyItemMap ( ) ; List < String > keys = new ArrayList < String > ( keyItemMap . keySet ( ) ) ; Collections . sort ( keys , CmsCaseInsensitiveStringComparator . getInstance ( ) ) ; for ( Object key : keys ) { if ( ( null != key ) && ! key . toString ( ) . isEmpty ( ) ) { m_descContent . addValue ( m_cms , Descriptor . N_MESSAGE , Descriptor . LOCALE , i ) ; i ++ ; String messagePrefix = Descriptor . N_MESSAGE + "[" + i + "]/" ; m_descContent . getValue ( messagePrefix + Descriptor . N_KEY , Descriptor . LOCALE ) . setStringValue ( m_cms , ( String ) key ) ; descProp = keyItemMap . get ( key ) . getItemProperty ( TableProperty . DESCRIPTION ) ; if ( ( null != descProp ) && ( null != descProp . getValue ( ) ) ) { desc = descProp . getValue ( ) . toString ( ) ; m_descContent . getValue ( messagePrefix + Descriptor . N_DESCRIPTION , Descriptor . LOCALE ) . setStringValue ( m_cms , desc ) ; } defaultValueProp = keyItemMap . get ( key ) . getItemProperty ( TableProperty . DEFAULT ) ; if ( ( null != defaultValueProp ) && ( null != defaultValueProp . getValue ( ) ) ) { defaultValue = defaultValueProp . getValue ( ) . toString ( ) ; m_descContent . getValue ( messagePrefix + Descriptor . N_DEFAULT , Descriptor . LOCALE ) . setStringValue ( m_cms , defaultValue ) ; } } } }
Update the descriptor content with values from the editor .