use of org.n52.shetland.inspire.InspireUniqueResourceIdentifier in project arctic-sea by 52North.
the class InspireEncoderTest method getMinimalInspireExtendedCapabilities.
/*
* xmlns:xsd="http://www.w3.org/2001/XMLSchema"
* xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=
* "http://inspire.ec.europa.eu/schemas/inspire_dls/1.0 http://inspire.ec.europa.eu/schemas/inspire_dls/1.0/inspire_dls.xsd"
*/
//
// @BeforeClass
// public static void init() {
// Map<String, String> prefixes = new HashMap<String, String>();
// prefixes.put(InspireConstants.NS_INSPIRE_COMMON, InspireConstants.NS_INSPIRE_COMMON_PREFIX);
// prefixes.put(InspireConstants.NS_INSPIRE_DLS, InspireConstants.NS_INSPIRE_DLS_PREFIX);
// xmlOptions.setSaveSuggestedPrefixes(prefixes);
// xmlOptions.setSaveImplicitNamespaces(prefixes);
// xmlOptions.setSaveAggressiveNamespaces();
// xmlOptions.setSavePrettyPrint();
// xmlOptions.setSaveNamespacesFirst();
// xmlOptions.setCharacterEncoding("UTF-8");
// }
//
// @Test
// public void enocodeMinimalInspireExtendedCapabilities() throws UnsupportedEncoderInputException,
// OwsExceptionReport, SAXException, IOException {
// InspireXmlEncoder inspireEncoder = new InspireXmlEncoder();
// validate(inspireEncoder.encode(getMinimalInspireExtendedCapabilities()));
// }
//
// @Test
// public void enocodeFullIsnpireExtendedCapabilities() throws UnsupportedEncoderInputException, OwsExceptionReport,
// SAXException, IOException {
// InspireXmlEncoder inspireEncoder = new InspireXmlEncoder();
// validate(inspireEncoder.encode(getFullInspireExtendedCapabilities()));
// }
//
// @Test
// public void valid_iso8601() {
// // date
// String datePattern = "\\d{4}-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])";
// String date = "2013-09-26";
// Assert.assertThat(Pattern.matches(datePattern, date), Matchers.is(true));
// // time
// String timePattern = "(T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?)?";
// String time_HH_MM_SS_S = "T12:49:41.740";
// Assert.assertThat(Pattern.matches(timePattern, time_HH_MM_SS_S), Matchers.is(true));
// String time_HH_MM_SS = "T12:49:41";
// Assert.assertThat(Pattern.matches(timePattern, time_HH_MM_SS), Matchers.is(true));
// // offset
// String offsetPattern = "(Z|[+|-](2[0-3]|[0-1][0-9]):([0-5][0-9]))?";
// String offset_PLUS_HH_MM = "+02:00";
// Assert.assertThat(Pattern.matches(offsetPattern, offset_PLUS_HH_MM), Matchers.is(true));
// String offset_MINUS_HH_MM = "-02:00";
// Assert.assertThat(Pattern.matches(offsetPattern, offset_MINUS_HH_MM), Matchers.is(true));
// String offset_Z = "Z";
// Assert.assertThat(Pattern.matches(offsetPattern, offset_Z), Matchers.is(true));
// // date time
// String dtPattern = datePattern + timePattern;
// Assert.assertThat(Pattern.matches(dtPattern, date + time_HH_MM_SS_S), Matchers.is(true));
// Assert.assertThat(Pattern.matches(dtPattern, date + time_HH_MM_SS), Matchers.is(true));
// // date time offset
// String dtoPattern = dtPattern + offsetPattern;
// Assert.assertThat(Pattern.matches(dtoPattern, date + time_HH_MM_SS_S + offset_PLUS_HH_MM), Matchers.is(true));
// Assert.assertThat(Pattern.matches(dtoPattern, date + time_HH_MM_SS_S + offset_MINUS_HH_MM), Matchers.is(true));
// Assert.assertThat(Pattern.matches(dtoPattern, date + time_HH_MM_SS_S + offset_Z), Matchers.is(true));
// Assert.assertThat(Pattern.matches(dtoPattern, date + time_HH_MM_SS + offset_PLUS_HH_MM), Matchers.is(true));
// Assert.assertThat(Pattern.matches(dtoPattern, date + time_HH_MM_SS + offset_MINUS_HH_MM), Matchers.is(true));
// Assert.assertThat(Pattern.matches(dtoPattern, date + time_HH_MM_SS + offset_Z), Matchers.is(true));
// // valid patter for schema: \d{4}-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])(T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\.[0-9]+)?)?(Z|[+|-](2[0-3]|[0-1][0-9]):([0-5][0-9]))?
//
// // String pattern =
// // "\\d{4}-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])(T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?)?(Z|([+|-](2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9])?)?)?";
// // Assert.assertThat(Pattern.matches(pattern, "2013-09-26T12:49:41.740+02:00"), Matchers.is(true));
// }
private MinimalInspireExtendedCapabilities getMinimalInspireExtendedCapabilities() {
// --------------------
InspireResourceLocator resourceLocator = new InspireResourceLocator("http://min.test.org/sos");
resourceLocator.addMediaType(MediaTypes.APPLICATION_SOAP_XML);
// --------------------
InspireSupportedLanguages inspireSupportedLanguages = new InspireSupportedLanguages(InspireLanguageISO6392B.ENG);
// --------------------
InspireLanguageISO6392B responseLanguage = InspireLanguageISO6392B.ENG;
// --------------------
Set<InspireUniqueResourceIdentifier> spatialDataSetIdentifier = Sets.newHashSet();
InspireUniqueResourceIdentifier iuri = new InspireUniqueResourceIdentifier("test");
iuri.setNamespace("http://test.org");
spatialDataSetIdentifier.add(iuri);
// --------------------
return new MinimalInspireExtendedCapabilities(resourceLocator, inspireSupportedLanguages, responseLanguage, spatialDataSetIdentifier, new InspireSupportedCRS("4326"));
}
use of org.n52.shetland.inspire.InspireUniqueResourceIdentifier in project arctic-sea by 52North.
the class InspireEncoderTest method getFullInspireExtendedCapabilities.
private FullInspireExtendedCapabilities getFullInspireExtendedCapabilities() {
InspireResourceLocator resourceLocator = new InspireResourceLocator("http://full.test.org/sos");
resourceLocator.addMediaType(MediaTypes.APPLICATION_SOAP_XML);
// -------------------
InspireTemporalReference temporalReference = new InspireTemporalReference();
temporalReference.setDateOfCreation(new InspireDateOfCreation(new DateTime()));
temporalReference.setDateOfLastRevision(new InspireDateOfLastRevision(new DateTime()));
temporalReference.addDateOfPublication(new InspireDateOfPublication(new DateTime()));
temporalReference.addTemporalExtent(new TimeInstant(new DateTime()));
temporalReference.addTemporalExtent(new TimePeriod(new DateTime(), new DateTime().plus(3456)));
// -------------------
InspireConformityCitation inspireConformityCitation = new InspireConformityCitation("Test", new InspireDateOfCreation(new DateTime()));
InspireConformity conformity = new InspireConformity(inspireConformityCitation, InspireDegreeOfConformity.notEvaluated);
// -------------------
InspireMetadataPointOfContact inspireMetadataPointOfContact = new InspireMetadataPointOfContact("test", "test@test.te");
// -------------------
InspireOriginatingControlledVocabulary inspireOriginatingControlledVocabulary = new InspireOriginatingControlledVocabulary("Test", new InspireDateOfCreation(new DateTime()));
InspireMandatoryKeyword inspireMandatoryKeyword = new InspireMandatoryKeyword(InspireMandatoryKeywordValue.humanServiceEditor, inspireOriginatingControlledVocabulary);
// --------------------
InspireSupportedLanguages inspireSupportedLanguages = new InspireSupportedLanguages(InspireLanguageISO6392B.ENG);
// --------------------
InspireLanguageISO6392B responseLanguage = InspireLanguageISO6392B.ENG;
// --------------------
InspireUniqueResourceIdentifier iuri = new InspireUniqueResourceIdentifier("test");
iuri.setNamespace("http://test.org");
// --------------------
FullInspireExtendedCapabilities inspireExtendedCapabilities = new FullInspireExtendedCapabilities(resourceLocator, inspireSupportedLanguages, responseLanguage, iuri, new InspireSupportedCRS("4326"));
inspireExtendedCapabilities.setResourceType(InspireServiceSpatialDataResourceType.service);
inspireExtendedCapabilities.addKeyword(new InspireKeyword("test"));
inspireExtendedCapabilities.addMandatoryKeyword(inspireMandatoryKeyword);
// -------------------
inspireExtendedCapabilities.setMetadataDate(new TimeInstant(new DateTime()));
// -------------------
inspireExtendedCapabilities.addMetadataPointOfContact(inspireMetadataPointOfContact);
inspireExtendedCapabilities.addConformity(conformity);
inspireExtendedCapabilities.addTemporalReference(temporalReference);
return inspireExtendedCapabilities;
}
use of org.n52.shetland.inspire.InspireUniqueResourceIdentifier in project arctic-sea by 52North.
the class InspireXmlStreamWriter method writeMinimlaInspireExtendedCapabilities.
/**
* Write minimal INSPIRE DLS ExtendedCapabilities
*
* @param minimalInspireExtendedCapabilities
* INSPIRE DLS ExtendedCapabilities to write
* @throws XMLStreamException
* If an error occurs when writing the INSPIRE DLS
* ExtendedCapabilities to stream
*/
private void writeMinimlaInspireExtendedCapabilities(MinimalInspireExtendedCapabilities minimalInspireExtendedCapabilities) throws XMLStreamException {
start(QN_EXTENDED_CAPABILITIES);
writeInspireCommonNamespaces(true);
writeInspireDLSNamespaces();
writeMetadataUrl(minimalInspireExtendedCapabilities.getMetadataUrl());
writeSupportedLanguages(minimalInspireExtendedCapabilities.getSupportedLanguages(), false);
writeResponseLanguage(minimalInspireExtendedCapabilities.getResponseLanguage());
for (InspireUniqueResourceIdentifier inspireUniqueResourceIdentifier : minimalInspireExtendedCapabilities.getSpatialDataSetIdentifier()) {
writeSpatialDataSetIdentifier(inspireUniqueResourceIdentifier);
}
writeSupportedCRS(minimalInspireExtendedCapabilities.getSupportedCRS(), false);
end(QN_EXTENDED_CAPABILITIES);
}
use of org.n52.shetland.inspire.InspireUniqueResourceIdentifier in project arctic-sea by 52North.
the class InspireXmlStreamWriter method writeFullInspireExtendedCapabilities.
/**
* Write full INSPIRE DLS ExtendedCapabilities
*
* @param fullInspireExtendedCapabilities
* INSPIRE DLS ExtendedCapabilities to write
* @throws XMLStreamException
* If an error occurs when writing the INSPIRE DLS
* ExtendedCapabilities to stream
*/
private void writeFullInspireExtendedCapabilities(FullInspireExtendedCapabilities fullInspireExtendedCapabilities) throws XMLStreamException {
start(QN_EXTENDED_CAPABILITIES);
writeInspireCommonNamespaces(true);
writeInspireDLSNamespaces();
for (InspireResourceLocator resourceLocator : fullInspireExtendedCapabilities.getResourceLocator()) {
writeResourceLocator(resourceLocator);
}
writeResourceType(fullInspireExtendedCapabilities.getResourceType());
writeTemporalReference(fullInspireExtendedCapabilities.getTemporalReferences());
for (InspireConformity conformity : fullInspireExtendedCapabilities.getConformity()) {
writeConformity(conformity);
}
for (InspireMetadataPointOfContact metadataPointOfContact : fullInspireExtendedCapabilities.getMetadataPointOfContacts()) {
writeMetadataPointOfContact(metadataPointOfContact);
}
writeMetadataDate(fullInspireExtendedCapabilities.getMetadataDate());
writeSpatialDataServiceType(fullInspireExtendedCapabilities.getSpatialDataServiceType());
for (InspireMandatoryKeyword mandatoryKeyword : fullInspireExtendedCapabilities.getMandatoryKeywords()) {
writeMandatoryKeyword(mandatoryKeyword);
}
if (fullInspireExtendedCapabilities.isSetKeywords()) {
for (InspireKeyword keyword : fullInspireExtendedCapabilities.getKeywords()) {
writeKeyword(keyword);
}
}
writeSupportedLanguages(fullInspireExtendedCapabilities.getSupportedLanguages(), false);
writeResponseLanguage(fullInspireExtendedCapabilities.getResponseLanguage());
if (fullInspireExtendedCapabilities.isSetMetadataUrl()) {
writeMetadataUrl(fullInspireExtendedCapabilities.getMetadataUrl());
}
for (InspireUniqueResourceIdentifier inspireUniqueResourceIdentifier : fullInspireExtendedCapabilities.getSpatialDataSetIdentifier()) {
writeSpatialDataSetIdentifier(inspireUniqueResourceIdentifier);
}
writeSupportedCRS(fullInspireExtendedCapabilities.getSupportedCRS(), false);
end(QN_EXTENDED_CAPABILITIES);
}
Aggregations