org.opensaml.ws.message.handler.PhasedHandlerChain Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of openws Show documentation
Show all versions of openws Show documentation
The OpenWS library provides a growing set of tools to work with web services at a low level. These tools include
classes for creating and reading SOAP messages, transport-independent clients for connecting to web services,
and various transports for use with those clients.
/*
* Licensed to the University Corporation for Advanced Internet Development,
* Inc. (UCAID) under one or more contributor license agreements. See the
* NOTICE file distributed with this work for additional information regarding
* copyright ownership. The UCAID licenses this file to You under the Apache
* License, Version 2.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.opensaml.ws.message.handler;
import java.util.List;
import java.util.Map;
/**
* A specialized type of {@link HandlerChain} which supports organizing multiple
* handler chains into a set of named handler chains called 'phases', which will be
* invoked in a specified order.
*/
public interface PhasedHandlerChain extends HandlerChain {
/**
* Modifiable map of phase names to corresponding handler chains.
*
* @return the map of phase names to handler chains
*/
public Map getPhaseChains();
/**
* Get the order of phase invocation. Handler chains will be invoked in the order
* determined by this list.
*
* @return the ordered list of phase names
*/
public List getPhaseOrder();
/**
* Set the order of phase invocation. Handler chains will be invoked in the order
* determined by this list.
*
* @param newPhaseOrder a list of phase names
*/
public void setPhaseOrder(List newPhaseOrder);
/**
* Get the complete effective list of ordered handlers in the handler chain.
*
*
* Note that unlike {@link HandlerChain}, the returned list is NOTmodifiable.
* {@link Handler} instances in the effective chain should be added and removed via
* membership in the appropriate handler chain phase, obtained via {@link #getPhaseChains()}.
*
*
* @return list of handlers
*/
public List getHandlers();
}