X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=core%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Fpreset%2Fxml%2FMaterialTypeDTO.java;fp=core%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Fpreset%2Fxml%2FMaterialTypeDTO.java;h=93a83b35f05357813d446781f2ac9af3efa9442d;hb=9349577cdfdff682b2aabd6daa24fdc3a7449b58;hp=0000000000000000000000000000000000000000;hpb=30ba0a882f0c061176ba14dbf86d3d6fad096c02;p=debian%2Fopenrocket diff --git a/core/src/net/sf/openrocket/preset/xml/MaterialTypeDTO.java b/core/src/net/sf/openrocket/preset/xml/MaterialTypeDTO.java new file mode 100644 index 00000000..93a83b35 --- /dev/null +++ b/core/src/net/sf/openrocket/preset/xml/MaterialTypeDTO.java @@ -0,0 +1,35 @@ + +package net.sf.openrocket.preset.xml; + +import net.sf.openrocket.material.Material; + +/** + * A mirror enum of Material.Type, for the purposes of mapping to/from an XML representation. + */ +public enum MaterialTypeDTO { + + LINE (Material.Type.LINE), + SURFACE (Material.Type.SURFACE), + BULK (Material.Type.BULK); + + private Material.Type corollary; + + private MaterialTypeDTO(final Material.Type theCorollary) { + corollary = theCorollary; + } + + public static MaterialTypeDTO asDTO(Material.Type targetType) { + MaterialTypeDTO[] values = values(); + for (int i = 0; i < values.length; i++) { + MaterialTypeDTO value = values[i]; + if (value.corollary.equals(targetType)) { + return value; + } + } + return BULK; //default + } + + public Material.Type getORMaterialType() { + return corollary; + } +}