create changelog entry
[debian/openrocket] / core / src / net / sf / openrocket / preset / TypedKey.java
index 935b2314adf73d3b367cca21ad9dba457219fb59..c3e4473187ad88199ea11e60fd1d247230530aa3 100644 (file)
@@ -1,13 +1,9 @@
 package net.sf.openrocket.preset;
 
-import net.sf.openrocket.database.Databases;
-import net.sf.openrocket.material.Material;
-import net.sf.openrocket.rocketcomponent.ExternalComponent.Finish;
-import net.sf.openrocket.startup.Application;
 import net.sf.openrocket.unit.UnitGroup;
 
 public class TypedKey<T> {
-       
+
        private final String name;
        private final Class<T> type;
        private final UnitGroup unitGroup;
@@ -21,53 +17,24 @@ public class TypedKey<T> {
                this.type = type;
                this.unitGroup = unitGroup;
        }
-       
+
+       @Override
+       public String toString() {
+               return "TypedKey [name=" + name + "]";
+       }
+
        public String getName() {
                return name;
        }
-       
+
        public Class<T> getType() {
                return type;
        }
-       
+
        public UnitGroup getUnitGroup() {
                return unitGroup;
        }
-       
-       public Object parseFromString(String value) {
-               if (type.equals(Boolean.class)) {
-                       return Boolean.parseBoolean(value);
-               }
-               if (type.isAssignableFrom(Double.class)) {
-                       return Double.parseDouble(value);
-               }
-               if (type.equals(String.class)) {
-                       return value;
-               }
-               if (type.equals(Finish.class)) {
-                       return Finish.valueOf(value);
-               }
-               if (type.equals(Material.class)) {
-                       // need to translate the value first!
-                       String translated_value = Application.getTranslator().get(value);
-                       Material material;
-                       material = Databases.findMaterial(Material.Type.BULK, translated_value);
-                       if (material != null) {
-                               return material;
-                       }
-                       material = Databases.findMaterial(Material.Type.LINE, translated_value);
-                       if (material != null) {
-                               return material;
-                       }
-                       material = Databases.findMaterial(Material.Type.SURFACE, translated_value);
-                       if (material != null) {
-                               return material;
-                       }
-                       throw new IllegalArgumentException("Invalid material " + value + " in component preset.");
-               }
-               throw new IllegalArgumentException("Inavlid type " + type.getName() + " for component preset parameter " + name);
-       }
-       
+
        @Override
        public int hashCode() {
                final int prime = 31;
@@ -76,7 +43,7 @@ public class TypedKey<T> {
                result = prime * result + ((type == null) ? 0 : type.hashCode());
                return result;
        }
-       
+
        @Override
        public boolean equals(Object obj) {
                if (this == obj)