Search in sources :

Example 1 with CustomProcessFunction

use of com.sldeditor.rendertransformation.CustomProcessFunction in project sldeditor by robward-scisys.

the class CustomProcessFunctionTest method createProcessDescriptionBBox.

/**
 * Test the process description bounding box values.
 */
@SuppressWarnings({ "unchecked", "rawtypes" })
@Test
public void createProcessDescriptionBBox() {
    ProcessDescriptionType process = Wps10FactoryImpl.init().createProcessDescriptionType();
    CodeType codeType = Ows11FactoryImpl.init().createCodeType();
    codeType.setValue("JTS:area");
    process.setIdentifier(codeType);
    InputDescriptionType inputDescription = Wps10FactoryImpl.init().createInputDescriptionType();
    CodeType codeType2 = Ows11FactoryImpl.init().createCodeType();
    codeType2.setValue("dummyParameter");
    inputDescription.setIdentifier(codeType2);
    inputDescription.setMinOccurs(BigInteger.valueOf(1));
    inputDescription.setMaxOccurs(BigInteger.valueOf(1));
    DataInputsType dataInputs = Wps10FactoryImpl.init().createDataInputsType();
    EList dataInputList = dataInputs.getInput();
    dataInputList.add(inputDescription);
    process.setDataInputs(dataInputs);
    SupportedCRSsType crs = Wps10FactoryImpl.init().createSupportedCRSsType();
    inputDescription.setBoundingBoxData(crs);
    CustomProcessFunction obj = new CustomProcessFunction();
    List<ProcessFunctionParameterValue> valueList = obj.extractParameters(process);
    assertEquals(1, valueList.size());
    ProcessFunctionParameterValue value = valueList.get(0);
    assertEquals(1, value.getMinOccurences());
    assertEquals(1, value.getMaxOccurences());
    assertTrue(value.getDataType().compareTo("BBOX") == 0);
    SupportedComplexDataInputType complex = Wps10FactoryImpl.init().createSupportedComplexDataInputType();
    inputDescription.setComplexData(complex);
    inputDescription.setBoundingBoxData(null);
    valueList = obj.extractParameters(process);
    assertEquals(1, valueList.size());
    value = valueList.get(0);
    assertEquals(1, value.getMinOccurences());
    assertEquals(1, value.getMaxOccurences());
    assertTrue(value.getDataType().compareTo("Geometry") == 0);
}
Also used : InputDescriptionType(net.opengis.wps10.InputDescriptionType) EList(org.eclipse.emf.common.util.EList) SupportedCRSsType(net.opengis.wps10.SupportedCRSsType) ProcessDescriptionType(net.opengis.wps10.ProcessDescriptionType) DataInputsType(net.opengis.wps10.DataInputsType) ProcessFunctionParameterValue(com.sldeditor.rendertransformation.ProcessFunctionParameterValue) CustomProcessFunction(com.sldeditor.rendertransformation.CustomProcessFunction) CodeType(net.opengis.ows11.CodeType) SupportedComplexDataInputType(net.opengis.wps10.SupportedComplexDataInputType) Test(org.junit.jupiter.api.Test)

Example 2 with CustomProcessFunction

use of com.sldeditor.rendertransformation.CustomProcessFunction in project sldeditor by robward-scisys.

the class CustomProcessFunctionTest method createProcessDescription.

/**
 * Creates the process description.
 *
 * @param type the type
 * @param defaultValue the default value
 * @param minOccurs the min occurs
 * @param maxOccurs the max occurs
 * @return the process function parameter value
 */
@SuppressWarnings({ "unchecked", "rawtypes" })
private ProcessFunctionParameterValue createProcessDescription(String type, String defaultValue, int minOccurs, int maxOccurs) {
    ProcessDescriptionType process = Wps10FactoryImpl.init().createProcessDescriptionType();
    CodeType codeType = Ows11FactoryImpl.init().createCodeType();
    codeType.setValue("JTS:area");
    process.setIdentifier(codeType);
    CodeType codeType2 = Ows11FactoryImpl.init().createCodeType();
    codeType2.setValue("dummyParameter");
    InputDescriptionType inputDescription = Wps10FactoryImpl.init().createInputDescriptionType();
    inputDescription.setIdentifier(codeType2);
    inputDescription.setMinOccurs(BigInteger.valueOf(minOccurs));
    inputDescription.setMaxOccurs(BigInteger.valueOf(maxOccurs));
    LiteralInputType literal = Wps10FactoryImpl.init().createLiteralInputType();
    DomainMetadataType domainType = Ows11FactoryImpl.init().createDomainMetadataType();
    domainType.setValue(type);
    literal.setDefaultValue(defaultValue);
    literal.setDataType(domainType);
    inputDescription.setLiteralData(literal);
    DataInputsType dataInputs = Wps10FactoryImpl.init().createDataInputsType();
    EList dataInputList = dataInputs.getInput();
    dataInputList.add(inputDescription);
    process.setDataInputs(dataInputs);
    CustomProcessFunction obj = new CustomProcessFunction();
    List<ProcessFunctionParameterValue> valueList = obj.extractParameters(process);
    assertEquals(1, valueList.size(), type);
    ProcessFunctionParameterValue value = valueList.get(0);
    assertEquals(minOccurs, value.getMinOccurences(), type);
    assertEquals(maxOccurs, value.getMaxOccurences(), type);
    return value;
}
Also used : DomainMetadataType(net.opengis.ows11.DomainMetadataType) InputDescriptionType(net.opengis.wps10.InputDescriptionType) EList(org.eclipse.emf.common.util.EList) ProcessDescriptionType(net.opengis.wps10.ProcessDescriptionType) DataInputsType(net.opengis.wps10.DataInputsType) ProcessFunctionParameterValue(com.sldeditor.rendertransformation.ProcessFunctionParameterValue) CustomProcessFunction(com.sldeditor.rendertransformation.CustomProcessFunction) CodeType(net.opengis.ows11.CodeType) LiteralInputType(net.opengis.wps10.LiteralInputType)

Example 3 with CustomProcessFunction

use of com.sldeditor.rendertransformation.CustomProcessFunction in project sldeditor by robward-scisys.

the class CustomProcessFunctionTest method createProcessDescriptionEnum.

/**
 * Test the process description enumeration values.
 */
@SuppressWarnings({ "unchecked", "rawtypes" })
@Test
public void createProcessDescriptionEnum() {
    ProcessDescriptionType process = Wps10FactoryImpl.init().createProcessDescriptionType();
    CodeType codeType = Ows11FactoryImpl.init().createCodeType();
    codeType.setValue("JTS:area");
    process.setIdentifier(codeType);
    InputDescriptionType inputDescription = Wps10FactoryImpl.init().createInputDescriptionType();
    CodeType codeType2 = Ows11FactoryImpl.init().createCodeType();
    codeType2.setValue("dummyParameter");
    inputDescription.setIdentifier(codeType2);
    inputDescription.setMinOccurs(BigInteger.valueOf(1));
    inputDescription.setMaxOccurs(BigInteger.valueOf(1));
    AllowedValuesType allowedValues = Ows11FactoryImpl.init().createAllowedValuesType();
    EList allowedValueList = allowedValues.getValue();
    ValueType item1 = Ows11FactoryImpl.init().createValueType();
    item1.setValue("item 1");
    allowedValueList.add(item1);
    ValueType item2 = Ows11FactoryImpl.init().createValueType();
    item2.setValue("item 2");
    allowedValueList.add(item2);
    ValueType item3 = Ows11FactoryImpl.init().createValueType();
    item1.setValue("item 3");
    allowedValueList.add(item3);
    LiteralInputType literal = Wps10FactoryImpl.init().createLiteralInputType();
    literal.setAllowedValues(allowedValues);
    inputDescription.setLiteralData(literal);
    DataInputsType dataInputs = Wps10FactoryImpl.init().createDataInputsType();
    EList dataInputList = dataInputs.getInput();
    dataInputList.add(inputDescription);
    process.setDataInputs(dataInputs);
    CustomProcessFunction obj = new CustomProcessFunction();
    List<ProcessFunctionParameterValue> valueList = obj.extractParameters(process);
    assertEquals(1, valueList.size());
    ProcessFunctionParameterValue value = valueList.get(0);
    assertEquals(1, value.getMinOccurences());
    assertEquals(1, value.getMaxOccurences());
}
Also used : InputDescriptionType(net.opengis.wps10.InputDescriptionType) EList(org.eclipse.emf.common.util.EList) ValueType(net.opengis.ows11.ValueType) AllowedValuesType(net.opengis.ows11.AllowedValuesType) ProcessDescriptionType(net.opengis.wps10.ProcessDescriptionType) DataInputsType(net.opengis.wps10.DataInputsType) ProcessFunctionParameterValue(com.sldeditor.rendertransformation.ProcessFunctionParameterValue) CustomProcessFunction(com.sldeditor.rendertransformation.CustomProcessFunction) CodeType(net.opengis.ows11.CodeType) LiteralInputType(net.opengis.wps10.LiteralInputType) Test(org.junit.jupiter.api.Test)

Example 4 with CustomProcessFunction

use of com.sldeditor.rendertransformation.CustomProcessFunction in project sldeditor by robward-scisys.

the class CustomProcessFunctionTest method testExtractParameters.

/**
 * Test method for {@link
 * com.sldeditor.rendertransformation.CustomProcessFunction#extractParameters(net.opengis.wps10.ProcessDescriptionType)}.
 */
@Test
public void testExtractParameters() {
    CustomProcessFunction obj = new CustomProcessFunction();
    obj.extractParameters(null);
    ProcessFunctionParameterValue value = createProcessDescription("xs:int", "1234", 0, 1);
    assertEquals("1234", value.getObjectValue().getExpression().toString());
    value = createProcessDescription("xs:boolean", "true", 1, 1);
    assertEquals("true", value.getObjectValue().getExpression().toString());
    value = createProcessDescription("xs:double", "3.141", 1, 2);
    assertTrue(Math.abs(Double.valueOf("3.141") - Double.valueOf(value.getObjectValue().getExpression().toString())) < 0.001);
    value = createProcessDescription("xs:float", "1.234", 0, 1);
    assertTrue(Math.abs(Float.valueOf("1.234") - Float.valueOf(value.getObjectValue().getExpression().toString())) < 0.001);
    value = createProcessDescription("xs:long", "9876", 1, 1);
    assertEquals("9876", value.getObjectValue().getExpression().toString());
    value = createProcessDescription("xs:xxx", "string", 1, 1);
    assertEquals("string", value.getObjectValue().getExpression().toString());
}
Also used : ProcessFunctionParameterValue(com.sldeditor.rendertransformation.ProcessFunctionParameterValue) CustomProcessFunction(com.sldeditor.rendertransformation.CustomProcessFunction) Test(org.junit.jupiter.api.Test)

Aggregations

CustomProcessFunction (com.sldeditor.rendertransformation.CustomProcessFunction)4 ProcessFunctionParameterValue (com.sldeditor.rendertransformation.ProcessFunctionParameterValue)4 CodeType (net.opengis.ows11.CodeType)3 DataInputsType (net.opengis.wps10.DataInputsType)3 InputDescriptionType (net.opengis.wps10.InputDescriptionType)3 ProcessDescriptionType (net.opengis.wps10.ProcessDescriptionType)3 EList (org.eclipse.emf.common.util.EList)3 Test (org.junit.jupiter.api.Test)3 LiteralInputType (net.opengis.wps10.LiteralInputType)2 AllowedValuesType (net.opengis.ows11.AllowedValuesType)1 DomainMetadataType (net.opengis.ows11.DomainMetadataType)1 ValueType (net.opengis.ows11.ValueType)1 SupportedCRSsType (net.opengis.wps10.SupportedCRSsType)1 SupportedComplexDataInputType (net.opengis.wps10.SupportedComplexDataInputType)1