felix@1085: package de.intevation.flys.artifacts.model;
felix@1085: 
felix@1085: import de.intevation.artifacts.Artifact;
felix@1085: import de.intevation.artifacts.CallContext;
felix@1085: import de.intevation.artifactdatabase.state.DefaultFacet;
felix@1085: import de.intevation.flys.artifacts.model.FacetTypes;
felix@1085: import de.intevation.flys.artifacts.MainValuesArtifact;
felix@1085: 
felix@1085: /**
felix@1085:  * Facet to show Main Q Values.
felix@1085:  */
felix@1085: public class MainValuesQFacet
felix@1085: extends      DefaultFacet
felix@1085: implements   FacetTypes {
felix@1085: 
felix@1085:     /** Trivial Constructor. */
felix@1112:     public MainValuesQFacet(String description) {
felix@1112:         this.description = description;
felix@1085:         name = COMPUTED_DISCHARGE_MAINVALUES_Q;
felix@1085:         index = 0;
felix@1085:     }
felix@1085: 
felix@1085: 
felix@1085:     /**
felix@1085:      * Returns the data this facet requires.
felix@1085:      *
felix@1085:      * @param artifact the owner artifact.
felix@1085:      * @param context  the CallContext (ignored).
felix@1085:      *
felix@1085:      * @return the data.
felix@1085:      */
felix@1085:     @Override
felix@1085:     public Object getData(Artifact artifact, CallContext context) {
felix@1085:         MainValuesArtifact mvArtifact = (MainValuesArtifact) artifact;
felix@1085:         return mvArtifact.getMainValuesQ();
felix@1085:     }
felix@1085: 
felix@1085: 
felix@1085:     /**
felix@1085:      * Create a deep copy of this Facet.
felix@1085:      * @return a deep copy.
felix@1085:      */
felix@1085:     @Override
felix@1085:     public MainValuesQFacet deepCopy() {
felix@1112:         MainValuesQFacet copy = new MainValuesQFacet(description);
felix@1085:         copy.set(this);
felix@1085:         return copy;
felix@1085:     }
felix@1085: }