Package eu.scape_project.planning.model.values

Examples of eu.scape_project.planning.model.values.Value


        Alternative a = new Alternative("test", "test");
        List<Alternative> alternatives = new ArrayList<Alternative>();
        alternatives.add(a);

        Map<String, Values> map = new HashMap<String, Values>();
        Value v1 = new IntegerValue();
        Value v2 = new IntegerValue();
        Value v3 = new IntegerValue();
        v1.setScale(new IntegerScale());
        Values values = new Values();
        values.add(v1);
        values.add(v2);
        values.add(v3);
View Full Code Here


        // Alternative a = new Alternative();
        // List<Alternative> alternatives = new ArrayList<Alternative>();
        // alternatives.add(a);
        // a.setName("test");
        Map<String, Values> map = new HashMap<String, Values>();
        Value v1 = new IntegerValue();
        v1.setScale(new IntegerScale());
        Values values1 = new Values();
        values1.add(v1);
        map.put("test1", values1);
        Value v2 = new IntegerValue();
        v2.setScale(new IntegerScale());
        Values values2 = new Values();
        values2.add(v2);
        map.put("test2", values2);
        Value v3 = new IntegerValue();
        v3.setScale(new IntegerScale());
        Values values3 = new Values();
        values3.add(v3);
        map.put("test3", values3);
        l.setValueMap(map);
        l.removeLooseValues(list, 5);
View Full Code Here

            for (Iterator<String> alts = consideredAltNames.iterator(); alts.hasNext();) {
                String alt = alts.next();
                Values values = l.getValues(alt);
                if (values != null) {
                    for (Iterator<Value> valueiter = values.getList().iterator(); valueiter.hasNext();) {
                        Value value = valueiter.next();
                        if ((value != null) && (value.getScale() != null) && value.isEvaluated()) {
                            numEvaluated++;
                        }
                    }
                }
            }
View Full Code Here

    public HashMap<String, Value> evaluate(Alternative alternative, SampleObject sample, DigitalObject result,
        List<String> measureUris, IStatusListener listener) throws EvaluatorException {

        HashMap<String, Value> results = new HashMap<String, Value>();
        for (String m : measureUris) {
            Value v = evaluate(alternative, sample, result, m);
            if (v != null) {
                results.put(m, v);
            }
        }
        return results;
View Full Code Here

                v.setComment("extracted from experiments details");
                return v;
            }
            return null;
        } else if (MeasureConstants.ELAPSED_TIME_PER_MB.equals(measureUri)) {
            Value extracted = extractMeasuredValue(alternative, sample, MeasureConstants.ELAPSED_TIME_PER_OBJECT);
            if (extracted instanceof PositiveFloatValue) {
                PositiveFloatValue value = new PositiveFloatValue();
                double floatVal = ((PositiveFloatValue) extracted).getValue();
                if (Double.compare(floatVal, 0.0) != 0) {
                    // calculate msec/MB
                    floatVal = floatVal / sampleSize;
                    value.setValue(floatVal);
                }
                value.setComment("extracted from experiment details");
                return value;
            }
        } else if (MeasureConstants.AVERAGE_MEMORY_USED_PER_MB.equals(measureUri)) {
            Value extracted = extractMeasuredValue(alternative, sample, MigrationResult.MIGRES_MEMORY_GROSS);
            if (extracted instanceof PositiveFloatValue) {
                PositiveFloatValue value = new PositiveFloatValue();
                double floatVal = ((PositiveFloatValue) extracted).getValue();

                value.setValue(floatVal / sampleSize);
                value.setComment("extracted from experiment details");
                return value;
            }
        }
        Value extracted = extractMeasuredValue(alternative, sample, measureUri);
        if (extracted != null) {
            extracted.setComment("extracted from experiment details");
        }
        return extracted;
    }
View Full Code Here

                for (String measureUri : measureUris) {
                    if (MeasureConstants.RETAIN_ORIGINAL_FILENAME.equals(measureUri)) {
                        // for all wrapped minimee migrators the output filename
                        // can be determined by -o <filename> or something
                        // similar
                        Value v = new BooleanValue();
                        v.setComment("obtained from PCDL descriptor");
                        v.parse("Yes");
                        results.put(measureUri, v);
                    }

                    String extractionPath = extractionPaths.get(measureUri);
                    if (extractionPath != null) {
                        Value v = new XmlExtractor().extractValue(doc, new OrdinalScale(), extractionPath, null);
                        if (v != null) {
                            v.setComment("obtained from PCDL descriptor");
                            results.put(measureUri, v);
                        } else {
                            // No: only successfully evaluated values are
                            // returned
                            // v = leaf.getScale().createValue();
View Full Code Here

                    "//fits:compressionScheme/text()");
                String resultImageCompressionScheme = extractor.extractText(fitsDocResult,
                    "//fits:compressionScheme/text()");

                for (String measureUri : measureUris) {
                    Value v = null;
                    if (MeasureConstants.FORMAT_CONFORMITY_WELL_FORMEDNESS.equals(measureUri)) {

                        v = extractor.extractValue(fitsDocResult, new BooleanScale(),
                            "//fits:well-formed[@status='SINGLE_RESULT']/text()",
                            "//fits:filestatus/fits:message/text()");
                    } else if (MeasureConstants.FORMAT_CONFORMITY_VALIDITY.equals(measureUri)) {
                        v = extractor.extractValue(fitsDocResult, new BooleanScale(),
                            "//fits:filestatus/fits:valid[@status='SINGLE_RESULT']/text()",
                            "//fits:filestatus/fits:message/text()");
                    }
                    if (MeasureConstants.COMPRESSION_ALGORITHM.equals(measureUri)) {
                        v = extractor.extractValue(fitsDocResult, new FreeStringScale(),
                            "//fits:compressionScheme/text()", null);
                    }

                    if ((v != null) && (v.getComment() == null || "".equals(v.getComment()))) {
                        v.setComment(SOURCE);
                        results.put(measureUri, v);
                        listener
                            .updateStatus(String.format("%s: measurement: %s = %s", NAME, measureUri, v.toString()));
                        // this leaf has been processed
                        continue;
                    }

                    if (MeasureConstants.FORMAT_CONFORMITY_CONFORMS.equals(measureUri)) {
                        if (alternative.getAction() != null) {
                            String puid = "UNDEFINED";
                            FormatInfo info = alternative.getAction().getTargetFormatInfo();
                            if (info != null) {
                                puid = info.getPuid();
                            }
                            String fitsText = extractor.extractText(fitsDocResult,
                                "//fits:externalIdentifier[@type='puid']/text()");
                            v = identicalValues(puid, fitsText, new BooleanScale());
                        }
                    } else if ((MeasureConstants.IMAGE_SIZE_IMAGE_WIDTH_EQUAL).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:imageWidth/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:imageWidth/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if ((MeasureConstants.IMAGE_SIZE_IMAGE_HEIGHT_EQUAL).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:imageHeight/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:imageHeight/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if ((MeasureConstants.IMAGE_ASPECT_RATIO_RETAINED).equals(measureUri)) {
                        try {
                            int sampleHeight = Integer.parseInt(extractor.extractText(fitsDocSample,
                                "//fits:imageHeight/text()"));
                            int resultHeight = Integer.parseInt(extractor.extractText(fitsDocResult,
                                "//fits:imageHeight/text()"));
                            int sampleWidth = Integer.parseInt(extractor.extractText(fitsDocSample,
                                "//fits:imageWidth/text()"));
                            int resultWidth = Integer.parseInt(extractor.extractText(fitsDocResult,
                                "//fits:imageWidth/text()"));

                            double sampleRatio = ((double) sampleWidth) / sampleHeight;
                            double resultRatio = ((double) resultWidth) / resultHeight;
                            v = new BooleanValue();
                            ((BooleanValue) v).bool(0 == Double.compare(sampleRatio, resultRatio));
                            v.setComment(String.format("Reference value: %s\nActual value: %s",
                                formatter.formatFloat(sampleRatio), formatter.formatFloat(resultRatio)));
                        } catch (NumberFormatException e) {
                            // not all values are available - aspectRatio cannot
                            // be calculated
                            v = new BooleanValue();
                            v.setComment("Image width and/or height are not available - aspectRatio cannot be calculated");
                        }
                        // } else if
                        // ((OBJECT_COMPRESSION_SCHEME_RETAINED).equals(measureUri))
                        // {
                        // v = identicalValues(sampleImageCompressionScheme,
                        // resultImageCompressionScheme,
                        // new BooleanScale());
                    } else if (MeasureConstants.COMPRESSION_COMPRESSION_TYPE.equals(measureUri)) {
                        v = new OrdinalValue();
                        if ((resultImageCompressionScheme == null) || ("".equals(resultImageCompressionScheme))
                            || ("None".equals(resultImageCompressionScheme))
                            || ("Uncompressed".equals(resultImageCompressionScheme))) {
                            v.parse("none");
                        } else if ("LZW".equals(resultImageCompressionScheme)
                            || "Deflate".equals(resultImageCompressionScheme)
                            || "JPEG 2000 Lossless".equals(resultImageCompressionScheme)) {
                            v.parse("lossless");
                            v.setComment("compression scheme: " + resultImageCompressionScheme);
                        } else {
                            v.parse("lossy");
                            v.setComment("compression scheme: " + resultImageCompressionScheme);
                        }
                    } else if ((MeasureConstants.COLOR_DEPTH_BITS_PER_SAMPLE_EQUAL).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:bitsPerSample/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:bitsPerSample/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                        // } else if
                        // ((EXIF_SAMPLES_PER_PIXEL_RETAINED).equals(measureUri))
                        // {
                        // String sampleValue =
                        // extractor.extractText(fitsDocSample,
                        // "//fits:samplesPerPixel/text()");
                        // String resultValue =
                        // extractor.extractText(fitsDocResult,
                        // "//fits:samplesPerPixel/text()");
                        // v = identicalValues(sampleValue, resultValue, new
                        // BooleanScale());
                        // } else if
                        // ((OBJECT_IMAGE_PHOTOMETRICINTERPRETATION_COLORSPACE +
                        // "#equal").equals(measureUri)) {
                        // String sampleValue =
                        // extractor.extractText(fitsDocSample,
                        // "//fits:colorSpace/text()");
                        // String resultValue =
                        // extractor.extractText(fitsDocResult,
                        // "//fits:colorSpace/text()");
                        // v = identicalValues(sampleValue, resultValue, new
                        // BooleanScale());
                    } else if ((MeasureConstants.COLOUR_MODEL_RETAINED).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:iccProfileName/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:iccProfileName/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if ((MeasureConstants.SAMPLING_FREQUENCY_UNIT).equals(measureUri)) {
                        String resultValue = extractor
                            .extractText(fitsDocResult, "//fits:samplingFrequencyUnit/text()");
                        v = new OrdinalScale().createValue();
                        ((OrdinalValue) v).setValue(resultValue);
                    } else if ((MeasureConstants.X_SAMPLING_FREQUENCY_PRESERVED).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:xSamplingFrequency/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:xSamplingFrequency/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if ((MeasureConstants.Y_SAMPLING_FREQUENCY_PRESERVED).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:ySamplingFrequency/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:ySamplingFrequency/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());

                    } else if ((MeasureConstants.EXIF_ALL_METADATA_RETAINED + "#equal").equals(measureUri)) {
                        // we use the equal metric. reserve PRESERVED metric for
                        // later and get it right.
                        HashMap<String, String> sampleMetadata = extractor.extractValues(fitsDocSample,
                            "//fits:exiftool/*[local-name() != 'rawdata']");
                        HashMap<String, String> resultMetadata = extractor.extractValues(fitsDocResult,
                            "//fits:exiftool/*[local-name() != 'rawdata']");
                        v = preservedValues(sampleMetadata, resultMetadata, new BooleanScale());
                    } else if ((MeasureConstants.PRODUCER_METADATA_ELEMENT_RETAINED).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample,
                            "//fits:ImageCreation/ImageProducer/text()");
                        String resultValue = extractor.extractText(fitsDocResult,
                            "//fits:ImageCreation/ImageProducer/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if (MeasureConstants.SOFTWARE_METADATA_ELEMENT_RETAINED.equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample,
                            "//fits:creatingApplicationName/text()");
                        String resultValue = extractor.extractText(fitsDocResult,
                            "//fits:creatingApplicationName/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if ((MeasureConstants.DATE_AND_TIME_OF_CREATION_METADATA_ELEMENT_RETAINED)
                        .equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample,
                            "//fits:ImageCreation/DateTimeCreated/text()");
                        String resultValue = extractor.extractText(fitsDocResult,
                            "//fits:ImageCreation/DateTimeCreated/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    } else if ((MeasureConstants.EXIF_IMAGE_DESCRIPTION_RETAINED + "#equal").equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample,
                            "//fits:exiftool/ImageDescription/text()");
                        String resultValue = extractor.extractText(fitsDocResult,
                            "//fits:exiftool/ImageDescription/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());

                    } else if ((MeasureConstants.IMAGE_ORIENTATION_METADATA_ELEMENT_RETAINED).equals(measureUri)) {
                        String sampleValue = extractor.extractText(fitsDocSample, "//fits:exiftool/Orientation/text()");
                        String resultValue = extractor.extractText(fitsDocResult, "//fits:exiftool/Orientation/text()");
                        v = identicalValues(sampleValue, resultValue, new BooleanScale());
                    }

                    if (v != null) {
                        v.setComment(v.getComment() + SOURCE);
                        results.put(measureUri, v);
                        listener.updateStatus(String.format("%s: evaluated measurement: %s = %s", NAME, measureUri,
                            v.toString()));
                    } else {
                        listener.updateStatus(String.format("%s: no evaluator found for measurement: %s", NAME,
                            measureUri));
                    }
                }
View Full Code Here

    public Value extractValue(Document xml, Scale scale, String xpath, String commentXPath) {
        try {
            Document pcdlDoc = xml;
            String text = extractTextInternal(pcdlDoc, xpath);
            Value v = null;
            // if the query provides no result, we cannot extract a value
            if (!StringUtils.isEmpty(text)) {
                v = scale.createValue();
                v.parse(text);
                if (commentXPath != null) {
                    String comment = extractTextInternal(pcdlDoc, commentXPath);
                    v.setComment(comment);
                }
            }
            return v;

        } catch (Exception e) {
View Full Code Here

TOP

Related Classes of eu.scape_project.planning.model.values.Value

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.