Search in sources :

Example 1 with OwsServiceProvider

use of org.n52.shetland.ogc.ows.OwsServiceProvider in project arctic-sea by 52North.

the class OwsEncoderv110 method encodeServiceProvider.

private ServiceProvider encodeServiceProvider(OwsServiceProvider osp) {
    /* TODO check for required fields and fail on missing ones */
    ServiceProvider serviceProvider = ServiceProvider.Factory.newInstance();
    serviceProvider.setProviderName(osp.getProviderName());
    osp.getProviderSite().ifPresent(x -> encodeOnlineResource(x, serviceProvider.addNewProviderSite()));
    encodeOwsResponsibleParty(osp.getServiceContact(), serviceProvider.addNewServiceContact());
    return serviceProvider;
}
Also used : OwsServiceProvider(org.n52.shetland.ogc.ows.OwsServiceProvider) ServiceProvider(net.opengis.ows.x11.ServiceProviderDocument.ServiceProvider)

Example 2 with OwsServiceProvider

use of org.n52.shetland.ogc.ows.OwsServiceProvider in project arctic-sea by 52North.

the class AbstractGetCapabilitiesHandler method createCapabilities.

private OwsCapabilities createCapabilities(GetCapabilitiesRequest request, String service, String version) throws OwsExceptionReport {
    Set<CapabilitiesSection> sections = getRequestedSections(request);
    Locale requestedLocale = getRequestedLocale(request);
    String updateSequence = null;
    OwsServiceIdentification serviceIdentification = null;
    if (sections.contains(CapabilitiesSection.ServiceIdentification)) {
        serviceIdentification = getServiceIdentification(service, requestedLocale);
    }
    OwsServiceProvider serviceProvider = null;
    if (sections.contains(CapabilitiesSection.ServiceProvider)) {
        serviceProvider = getServiceProvider(service, requestedLocale);
    }
    OwsOperationsMetadata operationsMetadata = null;
    if (sections.contains(CapabilitiesSection.OperationsMetadata)) {
        operationsMetadata = getOperations(service, version);
    }
    Set<String> languages = null;
    if (sections.contains(CapabilitiesSection.Languages)) {
        languages = getLanguages();
    }
    T contents = null;
    if (sections.contains(CapabilitiesSection.Contents)) {
        contents = createContents(service, version);
    }
    Collection<OwsCapabilitiesExtension> extensions = getExtensions(request, service, version);
    OwsCapabilities capabilities = new OwsCapabilities(service, version, updateSequence, serviceIdentification, serviceProvider, operationsMetadata, languages, extensions);
    return createCapabilities(capabilities, contents);
}
Also used : Locale(java.util.Locale) OwsCapabilitiesExtension(org.n52.shetland.ogc.ows.OwsCapabilitiesExtension) CapabilitiesSection(org.n52.shetland.ogc.ows.OWSConstants.CapabilitiesSection) OwsOperationsMetadata(org.n52.shetland.ogc.ows.OwsOperationsMetadata) OwsServiceProvider(org.n52.shetland.ogc.ows.OwsServiceProvider) OwsCapabilities(org.n52.shetland.ogc.ows.OwsCapabilities) OwsServiceIdentification(org.n52.shetland.ogc.ows.OwsServiceIdentification)

Example 3 with OwsServiceProvider

use of org.n52.shetland.ogc.ows.OwsServiceProvider in project arctic-sea by 52North.

the class OwsServiceProviderFactory method create.

@Override
protected OwsServiceProvider create(Locale language) throws ConfigurationError {
    // TODO organisation name is missing
    String organisationName = null;
    OwsOnlineResource onlineResource = null;
    if (site != null) {
        onlineResource = new OwsOnlineResource(site);
    }
    OwsCode roleCode = null;
    if (role != null) {
        roleCode = new OwsCode(role, roleCodespace);
    }
    OwsOnlineResource providerSite = null;
    if (onlineResoureHref != null) {
        providerSite = new OwsOnlineResource(onlineResoureHref, onlineResoureTitle);
    }
    OwsAddress address = null;
    if (anyNonNull(deliveryPoint, city, administrativeArea, postalCode, country, electronicMailAddress)) {
        address = new OwsAddress(deliveryPoint, city, administrativeArea, postalCode, country, electronicMailAddress);
    }
    OwsPhone owsPhone = null;
    if (anyNonNull(phone, facsimile)) {
        owsPhone = new OwsPhone(phone, facsimile);
    }
    OwsContact contactInfo = null;
    if (anyNonNull(owsPhone, address, onlineResource, hoursOfService, contactInstructions)) {
        contactInfo = new OwsContact(owsPhone, address, onlineResource, hoursOfService, contactInstructions);
    }
    OwsResponsibleParty serviceContact = new OwsResponsibleParty(individualName, organisationName, positionName, contactInfo, roleCode);
    return new OwsServiceProvider(name, providerSite, serviceContact);
}
Also used : OwsOnlineResource(org.n52.shetland.ogc.ows.OwsOnlineResource) OwsResponsibleParty(org.n52.shetland.ogc.ows.OwsResponsibleParty) OwsContact(org.n52.shetland.ogc.ows.OwsContact) OwsServiceProvider(org.n52.shetland.ogc.ows.OwsServiceProvider) OwsCode(org.n52.shetland.ogc.ows.OwsCode) OwsAddress(org.n52.shetland.ogc.ows.OwsAddress) OwsPhone(org.n52.shetland.ogc.ows.OwsPhone)

Example 4 with OwsServiceProvider

use of org.n52.shetland.ogc.ows.OwsServiceProvider in project arctic-sea by 52North.

the class OwsEncoderv110 method encode.

@Override
public XmlObject encode(Object element, EncodingContext additionalValues) throws EncodingException {
    if (element instanceof OwsServiceIdentification) {
        return encodeServiceIdentification((OwsServiceIdentification) element);
    } else if (element instanceof OwsServiceProvider) {
        return encodeServiceProvider((OwsServiceProvider) element);
    } else if (element instanceof OwsOperationsMetadata) {
        return encodeOperationsMetadata((OwsOperationsMetadata) element);
    } else if (element instanceof OwsExceptionReport) {
        if (isEncodeExceptionsOnly(additionalValues) && !((OwsExceptionReport) element).getExceptions().isEmpty()) {
            return encodeOwsException(((OwsExceptionReport) element).getExceptions().get(0));
        }
        return encodeOwsExceptionReport((OwsExceptionReport) element);
    } else if (element instanceof OwsMetadata) {
        MetadataType metadataType = MetadataType.Factory.newInstance(getXmlOptions());
        encodeOwsMetadata((OwsMetadata) element, metadataType);
        return metadataType;
    } else if (element instanceof OwsDomain) {
        DomainType domainType = DomainType.Factory.newInstance(getXmlOptions());
        encodeOwsDomain((OwsDomain) element, domainType);
        return domainType;
    } else if (element instanceof OwsAcceptVersions) {
        return encodeAcceptVersions((OwsAcceptVersions) element);
    } else if (element instanceof OwsSections) {
        return encodeSections((OwsSections) element);
    }
    throw new UnsupportedEncoderInputException(this, element);
}
Also used : OwsDomain(org.n52.shetland.ogc.ows.OwsDomain) DomainType(net.opengis.ows.x11.DomainType) OwsOperationsMetadata(org.n52.shetland.ogc.ows.OwsOperationsMetadata) OwsMetadata(org.n52.shetland.ogc.ows.OwsMetadata) OwsSections(org.n52.shetland.ogc.ows.OwsSections) OwsServiceProvider(org.n52.shetland.ogc.ows.OwsServiceProvider) MetadataType(net.opengis.ows.x11.MetadataType) DomainMetadataType(net.opengis.ows.x11.DomainMetadataType) OwsServiceIdentification(org.n52.shetland.ogc.ows.OwsServiceIdentification) OwsExceptionReport(org.n52.shetland.ogc.ows.exception.OwsExceptionReport) OwsAcceptVersions(org.n52.shetland.ogc.ows.OwsAcceptVersions) UnsupportedEncoderInputException(org.n52.svalbard.encode.exception.UnsupportedEncoderInputException)

Example 5 with OwsServiceProvider

use of org.n52.shetland.ogc.ows.OwsServiceProvider in project arctic-sea by 52North.

the class AbstractCapabilitiesBaseTypeDecoder method parseServiceProvider.

private OwsServiceProvider parseServiceProvider(ServiceProvider serviceProvider) {
    if (serviceProvider == null) {
        return null;
    }
    OwsOnlineResource providerSite = parseOnlineResource(serviceProvider.getProviderSite());
    OwsResponsibleParty serviceContact = parseResponsibleParty(serviceProvider.getServiceContact());
    String providerName = serviceProvider.getProviderName();
    return new OwsServiceProvider(providerName, providerSite, serviceContact);
}
Also used : OwsOnlineResource(org.n52.shetland.ogc.ows.OwsOnlineResource) OwsResponsibleParty(org.n52.shetland.ogc.ows.OwsResponsibleParty) OwsServiceProvider(org.n52.shetland.ogc.ows.OwsServiceProvider) LocalizedString(org.n52.janmayen.i18n.LocalizedString) MultilingualString(org.n52.janmayen.i18n.MultilingualString) OwsLanguageString(org.n52.shetland.ogc.ows.OwsLanguageString)

Aggregations

OwsServiceProvider (org.n52.shetland.ogc.ows.OwsServiceProvider)6 OwsOperationsMetadata (org.n52.shetland.ogc.ows.OwsOperationsMetadata)3 OwsServiceIdentification (org.n52.shetland.ogc.ows.OwsServiceIdentification)3 LocalizedString (org.n52.janmayen.i18n.LocalizedString)2 MultilingualString (org.n52.janmayen.i18n.MultilingualString)2 OwsCapabilities (org.n52.shetland.ogc.ows.OwsCapabilities)2 OwsCapabilitiesExtension (org.n52.shetland.ogc.ows.OwsCapabilitiesExtension)2 OwsLanguageString (org.n52.shetland.ogc.ows.OwsLanguageString)2 OwsOnlineResource (org.n52.shetland.ogc.ows.OwsOnlineResource)2 OwsResponsibleParty (org.n52.shetland.ogc.ows.OwsResponsibleParty)2 Locale (java.util.Locale)1 DomainMetadataType (net.opengis.ows.x11.DomainMetadataType)1 DomainType (net.opengis.ows.x11.DomainType)1 MetadataType (net.opengis.ows.x11.MetadataType)1 ServiceProvider (net.opengis.ows.x11.ServiceProviderDocument.ServiceProvider)1 CapabilitiesSection (org.n52.shetland.ogc.ows.OWSConstants.CapabilitiesSection)1 OwsAcceptVersions (org.n52.shetland.ogc.ows.OwsAcceptVersions)1 OwsAddress (org.n52.shetland.ogc.ows.OwsAddress)1 OwsCode (org.n52.shetland.ogc.ows.OwsCode)1 OwsContact (org.n52.shetland.ogc.ows.OwsContact)1