@Override public void initialize(GeoServer geoServer) throws Exception { // Add a new Element to the metadata map GeoServerInfo global = geoServer.getGlobal(); MetadataMap metadata = global.getSettings().getMetadata(); if(!metadata.containsKey(NetCDFSettingsContainer.NETCDFOUT_KEY)){ metadata.put(NetCDFSettingsContainer.NETCDFOUT_KEY, new NetCDFSettingsContainer()); geoServer.save(global); } } }
@Override public void initialize(GeoServer geoServer) throws Exception { // Add a new Element to the metadata map GeoServerInfo global = geoServer.getGlobal(); MetadataMap metadata = global.getSettings().getMetadata(); if (!metadata.containsKey(NetCDFSettingsContainer.NETCDFOUT_KEY)) { metadata.put(NetCDFSettingsContainer.NETCDFOUT_KEY, new NetCDFSettingsContainer()); geoServer.save(global); } } }
globalContainer = new NetCDFSettingsContainer();
@Override public IModel<CoverageInfo> createOwnModel( IModel<? extends LayerInfo> layerModel, boolean isNew) { CoverageInfo info = (CoverageInfo) layerModel.getObject().getResource(); // Check if the MetadataMap already contains the NetCDF Settings MetadataMap map = info.getMetadata(); NetCDFLayerSettingsContainer container = map.get(NetCDFSettingsContainer.NETCDFOUT_KEY, NetCDFLayerSettingsContainer.class); // If not present, add it to the map if (isNew || container == null) { // container = new NetCDFLayerSettingsContainer(); // Getting NetCDF Settings from the Global ones GeoServer gs = GeoServerExtensions.bean(GeoServer.class); MetadataMap globalMap = gs.getGlobal().getSettings().getMetadata(); NetCDFSettingsContainer globalContainer = globalMap.get( NetCDFSettingsContainer.NETCDFOUT_KEY, NetCDFSettingsContainer.class); // If not present, create a new container if (globalContainer == null) { globalContainer = new NetCDFSettingsContainer(); } container = new NetCDFLayerSettingsContainer(globalContainer); map.put(NetCDFSettingsContainer.NETCDFOUT_KEY, container); } return new Model<>(info); } }
@Override protected void convertInput() { globalAttributes.visitChildren(new Component.IVisitor<Component>() { @Override public Object component(Component component) { if (component instanceof FormComponent) { FormComponent<?> formComponent = (FormComponent<?>) component; formComponent.processInput(); } return Component.IVisitor.CONTINUE_TRAVERSAL; } }); compressionLevel.processInput(); dataPacking.processInput(); shuffle.processInput(); List<GlobalAttribute> info = globalAttributes.getModelObject(); NetCDFSettingsContainer convertedInput = new NetCDFSettingsContainer(); convertedInput.setCompressionLevel(compressionLevel.getModelObject()); convertedInput.setGlobalAttributes(info); convertedInput.setDataPacking(dataPacking.getModelObject()); convertedInput.setShuffle(shuffle.getModelObject()); setConvertedInput((T) convertedInput); } }
copyAttributes.processInput(); copyGlobalAttributes.processInput(); NetCDFSettingsContainer convertedInput = new NetCDFSettingsContainer(); convertedInput.setCompressionLevel(compressionLevel.getModelObject()); convertedInput.setGlobalAttributes(globalAttributes.getModelObject());
netcdfModel.setObject((T) new NetCDFSettingsContainer());