/* (c) 2015 - 2016 Open Source Geospatial Foundation - all rights reserved * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.gwc.web.blob; import org.apache.commons.io.filefilter.DirectoryFileFilter; import org.apache.wicket.AttributeModifier; import org.apache.wicket.markup.html.form.TextField; import org.apache.wicket.markup.html.panel.Panel; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import org.apache.wicket.model.PropertyModel; import org.apache.wicket.model.ResourceModel; import org.geoserver.web.data.store.panel.DirectoryParamPanel; import org.geoserver.web.wicket.ParamResourceModel; import org.geowebcache.config.FileBlobStoreConfig; /** * * Panel for FileBlobStore * * @author Niels Charlier */ public class FileBlobStorePanel extends Panel { private static final long serialVersionUID = -8237328668463257329L; public FileBlobStorePanel(String id, final IModel<FileBlobStoreConfig> configModel) { super(id, configModel); } @SuppressWarnings("unchecked") @Override public void onInitialize() { super.onInitialize(); DirectoryParamPanel paramPanel; add(paramPanel = new DirectoryParamPanel("baseDirectory", new PropertyModel<String>( getDefaultModel().getObject(), "baseDirectory"), new ParamResourceModel("baseDirectory", this), true)); paramPanel.add(new AttributeModifier("title", new ResourceModel("baseDirectory.title"))); paramPanel.getFormComponent().setModel((IModel<String>) paramPanel.getDefaultModel()); // disable filemodel paramPanel.setFileFilter(new Model<DirectoryFileFilter>( (DirectoryFileFilter) DirectoryFileFilter.INSTANCE)); add(new TextField<Integer>("fileSystemBlockSize").setRequired(true) .add(new AttributeModifier("title", new ResourceModel("fileSystemBlockSize.title")))); } }