Add method to extract the List<Materials> from the parsed file.
authorkruland2607 <kruland2607@180e2498-e6e9-4542-8430-84ac67f01cd8>
Wed, 6 Jun 2012 17:58:49 +0000 (17:58 +0000)
committerkruland2607 <kruland2607@180e2498-e6e9-4542-8430-84ac67f01cd8>
Wed, 6 Jun 2012 17:58:49 +0000 (17:58 +0000)
git-svn-id: https://openrocket.svn.sourceforge.net/svnroot/openrocket/trunk@764 180e2498-e6e9-4542-8430-84ac67f01cd8

core/src/net/sf/openrocket/preset/xml/OpenRocketComponentDTO.java

index 8c60d656b65a9e27a1308ee813d1cb81142057a6..69da4e859154046a9bb25f7465dc8795beb4d991 100644 (file)
@@ -1,7 +1,7 @@
 package net.sf.openrocket.preset.xml;
 
-import net.sf.openrocket.preset.ComponentPreset;
-import net.sf.openrocket.preset.InvalidComponentPresetException;
+import java.util.ArrayList;
+import java.util.List;
 
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
@@ -10,8 +10,10 @@ import javax.xml.bind.annotation.XmlElementRef;
 import javax.xml.bind.annotation.XmlElementRefs;
 import javax.xml.bind.annotation.XmlElementWrapper;
 import javax.xml.bind.annotation.XmlRootElement;
-import java.util.ArrayList;
-import java.util.List;
+
+import net.sf.openrocket.material.Material;
+import net.sf.openrocket.preset.ComponentPreset;
+import net.sf.openrocket.preset.InvalidComponentPresetException;
 
 /**
  * The real 'root' element in an XML document.
@@ -74,10 +76,18 @@ public class OpenRocketComponentDTO {
     }
 
     public List<ComponentPreset> asComponentPresets() throws InvalidComponentPresetException {
-        List<ComponentPreset> result = new ArrayList<ComponentPreset>();
+        List<ComponentPreset> result = new ArrayList<ComponentPreset>(components.size());
         for (int i = 0; i < components.size(); i++) {
             result.add(components.get(i).asComponentPreset(materials));
         }
         return result;
     }
+    
+    public List<Material> asMaterialList() {
+       List<Material> result = new ArrayList<Material>( materials.size() );
+       for( MaterialDTO material : materials ) {
+               result.add( material.asMaterial() );
+       }
+       return result;
+    }
 }