/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * (c) 2001 - 2013 OpenPlans * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.security.config; /** * Base class for named security service configuration objects. * * In general, developers seeking to implement this interface should start from * {@link BaseSecurityNamedServiceConfig } which provides valid default * implementations for all methods in this interface. * * @author christian */ public interface SecurityNamedServiceConfig extends SecurityConfig { /** * Internal id of the config object. * <p> * This method is generally not useful to client code; the ID property * is used within the configuration persistence system. * </p> */ String getId(); /** * Sets internal id of the config object. * * <p> * This method is generally not useful to client code; the ID property is * used within the configuration persistence system. * </p> */ void setId(String newId); /** * The name of the service. */ String getName(); /** * Sets the name for a service. */ void setName(String name); /** * Name of class for implementation of the service. */ String getClassName(); /** * Sets name of class for implementation of the service. */ void setClassName(String className); /** * Method for the config object to initialize any properties before being saved for the first * time. * <p> * This method would typically be used to initialize properties not explicitly set by the * user, but that can be set based on other user initialized properties. * </p> */ void initBeforeSave(); }