diff --git a/common/src/main/java/com/genexus/GXExternalCollection.java b/common/src/main/java/com/genexus/GXExternalCollection.java index baf60e363..09b50bde5 100644 --- a/common/src/main/java/com/genexus/GXExternalCollection.java +++ b/common/src/main/java/com/genexus/GXExternalCollection.java @@ -99,6 +99,7 @@ public Vector getStruct() return struct; } + @SuppressWarnings("unchecked") public ArrayList getExternalInstance() { ArrayList list = new ArrayList(); for (T Item : this) @@ -115,5 +116,23 @@ public ArrayList getExternalInstance() { return list; } + @SuppressWarnings("unchecked") + public void setExternalInstance(ArrayList data) + { + try { + clear(); + for (Object item : data) { + T obj = elementsType.getConstructor(new Class[]{}).newInstance(); + obj.getClass().getMethod("setExternalInstance", item.getClass()).invoke(obj, item); + super.add(obj); + vectorExternal.add(item); + } + } + catch(Exception ex) + { + ex.printStackTrace(); + } + } + }