@@ -28,7 +28,7 @@ public class DescriptionAction extends Action {
2828 public static class Description implements Serializable {
2929 private static final long serialVersionUID = 1L ;
3030
31- private List <Map <String , String >> content = new ArrayList <Map < String , String > >();
31+ private final List <Map <String , String >> content = new ArrayList <>();
3232
3333 private final Locale locale ;
3434
@@ -48,7 +48,7 @@ public void append(String lang, String description, boolean replace) {
4848 // default desc. ist der indikator für eine neue map,
4949 // alle lok. sprachen müssen danach in der xml datei definiert werden
5050 if (content .isEmpty () || lang .equalsIgnoreCase (DEFAULT_LANG )) {
51- content .add (new HashMap <String , String >());
51+ content .add (new HashMap <>());
5252 }
5353
5454 Map <String , String > map = content .get (content .size () - 1 );
@@ -94,7 +94,14 @@ public String toString() {
9494
9595 @ Override
9696 public void perform (Context ctx ) {
97- Description desc = (Description ) ctx .getProperty (KEY );
97+ Description desc = null ;
98+
99+ if (ctx .getProperty (KEY ) instanceof Description ) {
100+ desc = (Description ) ctx .getProperty (KEY );
101+ } else if (ctx .getProperty (KEY ) instanceof String ) {
102+ desc = new Description (ctx .getLocale ());
103+ desc .append (null , (String ) ctx .getProperty (KEY ), replace );
104+ }
98105
99106 if (desc == null ) {
100107 desc = new Description (ctx .getLocale ());
0 commit comments