/* (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.wps; import java.util.List; import org.geoserver.catalog.Info; import org.geoserver.catalog.MetadataMap; import org.geotools.process.ProcessFactory; /** * Configuration for a specific process group (backed by a {@link ProcessFactory}) * * Andrea Aime - GeoSolutions */ public interface ProcessGroupInfo extends Info, Cloneable { /** * The process factory class (only means to identify it) */ public Class<? extends ProcessFactory> getFactoryClass(); /** * Sets the process factory class * * @param factoryClass */ public void setFactoryClass(Class<? extends ProcessFactory> factoryClass); /** * True if the factory is enabled, false otherwise * * */ public boolean isEnabled(); /** * Enables/disables the factory * * @param enabled */ public void setEnabled(boolean enabled); /** * The list of processes generated by this factory that needs to be filtered out (disabled) or * exert access control on * * */ public List<ProcessInfo> getFilteredProcesses(); /** * The metadata map, can contain any sort of information that non core plugins might use to * handle information related to this factory * * */ MetadataMap getMetadata(); /** * Create a copy of this class * */ ProcessGroupInfo clone(); /* * Return roles granted to works with the WPS on this groups */ List<String> getRoles(); void setRoles(List<String> roles); }