use of org.geotoolkit.ogc.xml.v200.LiteralType in project geotoolkit by Geomatys.
the class OGC100Test method testExpAdd.
// //////////////////////////////////////////////////////////////////////////
// JAXB TEST MARSHELLING AND UNMARSHELLING FOR EXPRESSION //////////////////
// //////////////////////////////////////////////////////////////////////////
@Test
public void testExpAdd() throws JAXBException {
final Unmarshaller UNMARSHALLER = POOL.acquireUnmarshaller();
final Marshaller MARSHALLER = POOL.acquireMarshaller();
// Read test
Object obj = UNMARSHALLER.unmarshal(FILE_EXP_ADD);
assertNotNull(obj);
JAXBElement<BinaryOperatorType> jax = (JAXBElement<BinaryOperatorType>) obj;
Expression exp = (Expression) TRANSFORMER_GT.visitExpression(jax);
assertNotNull(exp);
ValueReference left = (ValueReference) exp.getParameters().get(0);
Literal right = (Literal) exp.getParameters().get(1);
assertNotNull(left);
assertNotNull(right);
assertEquals(left.getXPath(), valueStr);
assertEquals(((Number) right.apply(null)).floatValue(), valueF, DELTA);
// Write test
jax = (JAXBElement<BinaryOperatorType>) TRANSFORMER_OGC.extract(exp);
assertNotNull(jax);
assertEquals(jax.getName().getLocalPart(), OGCJAXBStatics.EXPRESSION_ADD);
JAXBElement<PropertyNameType> ele1 = (JAXBElement<PropertyNameType>) jax.getValue().getExpression().get(0);
JAXBElement<LiteralType> ele2 = (JAXBElement<LiteralType>) jax.getValue().getExpression().get(1);
MARSHALLER.marshal(jax, TEST_FILE_EXP_ADD);
POOL.recycle(MARSHALLER);
POOL.recycle(UNMARSHALLER);
}
use of org.geotoolkit.ogc.xml.v200.LiteralType in project geotoolkit by Geomatys.
the class OGC100Test method testFilterComparisonPropertyIsBetween.
// //////////////////////////////////////////////////////////////////////////
// JAXB TEST MARSHELLING AND UNMARSHELLING FOR COMPARISON FILTERS //////////
// //////////////////////////////////////////////////////////////////////////
@Test
public void testFilterComparisonPropertyIsBetween() throws JAXBException {
final Unmarshaller UNMARSHALLER = POOL.acquireUnmarshaller();
final Marshaller MARSHALLER = POOL.acquireMarshaller();
// Read test
Object obj = UNMARSHALLER.unmarshal(FILE_FIL_COMP_ISBETWEEN);
assertNotNull(obj);
JAXBElement<? extends FilterType> jaxfilter = (JAXBElement<? extends FilterType>) obj;
assertNotNull(jaxfilter);
Filter filter = TRANSFORMER_GT.visitFilter(jaxfilter.getValue());
assertNotNull(filter);
BetweenComparisonOperator prop = (BetweenComparisonOperator) filter;
ValueReference center = (ValueReference) prop.getExpression();
Literal lower = (Literal) prop.getLowerBoundary();
Literal upper = (Literal) prop.getUpperBoundary();
assertEquals(center.getXPath(), valueStr);
assertEquals(((Number) lower.apply(null)).floatValue(), 455f, DELTA);
assertEquals(((Number) upper.apply(null)).floatValue(), 457f, DELTA);
// write test
FilterType ft = TRANSFORMER_OGC.apply(filter);
assertNotNull(ft.getComparisonOps());
ComparisonOpsType cot = ft.getComparisonOps().getValue();
PropertyIsBetweenType pibt = (PropertyIsBetweenType) cot;
PropertyNameType pnt = (PropertyNameType) pibt.getExpression().getValue();
LiteralType low = (LiteralType) pibt.getLowerBoundary().getExpression().getValue();
LiteralType up = (LiteralType) pibt.getUpperBoundary().getExpression().getValue();
assertEquals(pnt.getContent(), valueStr);
numberEquals(455, low.getContent().get(0));
numberEquals(457, up.getContent().get(0));
MARSHALLER.marshal(ft.getComparisonOps(), TEST_FILE_FIL_COMP_ISBETWEEN);
POOL.recycle(MARSHALLER);
POOL.recycle(UNMARSHALLER);
}
use of org.geotoolkit.ogc.xml.v200.LiteralType in project geotoolkit by Geomatys.
the class OGC100Test method testFilterComparisonPropertyIsLessThan.
@Test
public void testFilterComparisonPropertyIsLessThan() throws JAXBException {
final Unmarshaller UNMARSHALLER = POOL.acquireUnmarshaller();
final Marshaller MARSHALLER = POOL.acquireMarshaller();
// Read test
Object obj = UNMARSHALLER.unmarshal(FILE_FIL_COMP_ISLESS);
assertNotNull(obj);
JAXBElement<? extends FilterType> jaxfilter = (JAXBElement<? extends FilterType>) obj;
assertNotNull(jaxfilter);
Filter filter = TRANSFORMER_GT.visitFilter(jaxfilter.getValue());
assertNotNull(filter);
BinaryComparisonOperator prop = (BinaryComparisonOperator) filter;
ValueReference left = (ValueReference) prop.getOperand1();
Literal right = (Literal) prop.getOperand2();
assertEquals(left.getXPath(), valueStr);
assertEquals(((Number) right.apply(null)).floatValue(), valueF, DELTA);
// write test
FilterType ft = TRANSFORMER_OGC.apply(filter);
assertNotNull(ft.getComparisonOps());
ComparisonOpsType cot = ft.getComparisonOps().getValue();
BinaryComparisonOpType pibt = (BinaryComparisonOpType) cot;
PropertyNameType lf = (PropertyNameType) pibt.getExpression().get(0).getValue();
LiteralType rg = (LiteralType) pibt.getExpression().get(1).getValue();
assertEquals(valueStr, lf.getContent());
numberEquals(valueF, rg.getContent().get(0).toString().trim());
MARSHALLER.marshal(ft.getComparisonOps(), TEST_FILE_FIL_COMP_ISLESS);
POOL.recycle(MARSHALLER);
POOL.recycle(UNMARSHALLER);
}
use of org.geotoolkit.ogc.xml.v200.LiteralType in project geotoolkit by Geomatys.
the class OGC100Test method testExpMul.
@Test
public void testExpMul() throws JAXBException {
final Unmarshaller UNMARSHALLER = POOL.acquireUnmarshaller();
final Marshaller MARSHALLER = POOL.acquireMarshaller();
// Read test
Object obj = UNMARSHALLER.unmarshal(FILE_EXP_MUL);
assertNotNull(obj);
JAXBElement<BinaryOperatorType> jax = (JAXBElement<BinaryOperatorType>) obj;
Expression exp = (Expression) TRANSFORMER_GT.visitExpression(jax);
assertNotNull(exp);
ValueReference left = (ValueReference) exp.getParameters().get(0);
Literal right = (Literal) exp.getParameters().get(1);
assertNotNull(left);
assertNotNull(right);
assertEquals(left.getXPath(), valueStr);
assertEquals(((Number) right.apply(null)).floatValue(), valueF, DELTA);
// Write test
jax = (JAXBElement<BinaryOperatorType>) TRANSFORMER_OGC.extract(exp);
assertNotNull(jax);
assertEquals(jax.getName().getLocalPart(), OGCJAXBStatics.EXPRESSION_MUL);
JAXBElement<PropertyNameType> ele1 = (JAXBElement<PropertyNameType>) jax.getValue().getExpression().get(0);
JAXBElement<LiteralType> ele2 = (JAXBElement<LiteralType>) jax.getValue().getExpression().get(1);
MARSHALLER.marshal(jax, TEST_FILE_EXP_MUL);
POOL.recycle(MARSHALLER);
POOL.recycle(UNMARSHALLER);
}
use of org.geotoolkit.ogc.xml.v200.LiteralType in project geotoolkit by Geomatys.
the class OGC100Test method testExpSub.
@Test
public void testExpSub() throws JAXBException {
final Unmarshaller UNMARSHALLER = POOL.acquireUnmarshaller();
final Marshaller MARSHALLER = POOL.acquireMarshaller();
// Read test
Object obj = UNMARSHALLER.unmarshal(FILE_EXP_SUB);
assertNotNull(obj);
JAXBElement<BinaryOperatorType> jax = (JAXBElement<BinaryOperatorType>) obj;
Expression exp = (Expression) TRANSFORMER_GT.visitExpression(jax);
assertNotNull(exp);
ValueReference left = (ValueReference) exp.getParameters().get(0);
Literal right = (Literal) exp.getParameters().get(1);
assertNotNull(left);
assertNotNull(right);
assertEquals(left.getXPath(), valueStr);
assertEquals(((Number) right.apply(null)).floatValue(), valueF, DELTA);
// Write test
JAXBElement<BinaryOperatorType> pvt = (JAXBElement<BinaryOperatorType>) TRANSFORMER_OGC.extract(exp);
assertNotNull(jax);
assertEquals(jax.getName().getLocalPart(), OGCJAXBStatics.EXPRESSION_SUB);
JAXBElement<PropertyNameType> ele1 = (JAXBElement<PropertyNameType>) jax.getValue().getExpression().get(0);
JAXBElement<LiteralType> ele2 = (JAXBElement<LiteralType>) jax.getValue().getExpression().get(1);
MARSHALLER.marshal(jax, TEST_FILE_EXP_SUB);
POOL.recycle(MARSHALLER);
POOL.recycle(UNMARSHALLER);
}
Aggregations