/** * Create an instance of {@link ServiceConfiguration } * */ public ServiceConfiguration createServiceConfiguration() { return new ServiceConfiguration(); }
/** * @return a new WCService */ public WCService buildService() { wcsService = new WCService(); ServiceConfiguration wcsConf = ServiceConfigurationXMLAdapter.parse( workspace, metadata ); RasterDataContainerFactory.setDefaultLoadingPolicy( LoadingPolicy.CACHED ); defaultOptions = wcsConf.getSupportOptions(); if ( defaultOptions == null ) { defaultOptions = new SupportOptions(); } // if the list of outputformats is not defined by the config, use all available formats. List<String> defaultFormats = defaultOptions.getOutputFormat(); if ( defaultFormats.isEmpty() ) { defaultFormats.addAll( RasterFactory.getAllSupportedWritingFormats() ); Collections.sort( defaultFormats ); } for ( Coverage coverage : wcsConf.getCoverage() ) { try { wcsService.addCoverage( extractCoverage( coverage ) ); } catch ( ServiceInitException ex ) { LOG.error( "unable to load coverage: {}", ex.getMessage(), ex ); } } return wcsService; }
@Override public ResourceBuilder<OWS> prepare() { try { DeegreeWCS cfg = (DeegreeWCS) JAXBUtils.unmarshall( "org.deegree.services.jaxb.wcs", provider.getSchema(), location.getAsStream(), workspace ); for ( org.deegree.services.jaxb.wcs.ServiceConfiguration.Coverage cov : cfg.getServiceConfiguration().getCoverage() ) { String id = cov.getCoverageStoreId(); dependencies.add( new DefaultResourceIdentifier<Coverage>( CoverageProvider.class, id ) ); } OWSMetadataProviderManager mmgr = workspace.getResourceManager( OWSMetadataProviderManager.class ); for ( ResourceMetadata<OWSMetadataProvider> md : mmgr.getResourceMetadata() ) { ResourceIdentifier<OWSMetadataProvider> mdId = md.getIdentifier(); if ( mdId.getId().equals( getIdentifier().getId() + "_metadata" ) ) { softDependencies.add( mdId ); } } return new WcsBuilder( this, workspace, cfg ); } catch ( Exception e ) { throw new ResourceInitException( e.getLocalizedMessage(), e ); } }