001: /*
002: * BEGIN_HEADER - DO NOT EDIT
003: *
004: * The contents of this file are subject to the terms
005: * of the Common Development and Distribution License
006: * (the "License"). You may not use this file except
007: * in compliance with the License.
008: *
009: * You can obtain a copy of the license at
010: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
011: * See the License for the specific language governing
012: * permissions and limitations under the License.
013: *
014: * When distributing Covered Code, include this CDDL
015: * HEADER in each file and include the License file at
016: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
017: * If applicable add the following below this CDDL HEADER,
018: * with the fields enclosed by brackets "[]" replaced with
019: * your own identifying information: Portions Copyright
020: * [year] [name of copyright owner]
021: */
022:
023: /*
024: * @(#)MessageSecPolicyImpl.java
025: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
026: *
027: * END_HEADER - DO NOT EDIT
028: */
029: /**
030: * MessageSecPolicy.java
031: *
032: * SUN PROPRIETARY/CONFIDENTIAL.
033: * This software is the proprietary information of Sun Microsystems, Inc.
034: * Use is subject to license terms.
035: *
036: * Created on March 18, 2005, 12:05 PM
037: */package com.sun.jbi.internal.security.config;
038:
039: import com.sun.enterprise.security.jauth.AuthPolicy;
040: import java.util.Set;
041:
042: /**
043: * Implementation of the Message Protection Policy.
044: *
045: * @author Sun Microsystems, Inc.
046: */
047: public class MessageSecPolicyImpl implements MessageSecPolicy {
048: /** The Request Policy. */
049: private AuthPolicy mReqPolicy;
050:
051: /** The Response Policy. */
052: private AuthPolicy mRespPolicy;
053:
054: /** The Provider Name. */
055: private String mProviderId;
056:
057: /** The Set of Operations to which this Policy applies. */
058: private Set mOperationSet;
059:
060: /**
061: * Ctor.
062: * @param ops is the set of operations for the MessageSecPolicy
063: * @param reqPolicy is the Request Auth Policy
064: * @param respPolicy is the Response Auth Policy
065: */
066: public MessageSecPolicyImpl(Set ops, AuthPolicy reqPolicy,
067: AuthPolicy respPolicy) {
068: this (ops, reqPolicy, respPolicy, null);
069: }
070:
071: /**
072: * Ctor.
073: *
074: * @param ops is the set of operations for the MessageSecPolicy
075: * @param reqPolicy is the Request Auth Policy
076: * @param respPolicy is the Response Auth Policy
077: * @param provider is the Provider Name
078: */
079: public MessageSecPolicyImpl(Set ops, AuthPolicy reqPolicy,
080: AuthPolicy respPolicy, String provider) {
081: mProviderId = provider;
082: mReqPolicy = reqPolicy;
083: mRespPolicy = respPolicy;
084: mOperationSet = ops;
085: }
086:
087: /**
088: * Get the RequestPolicy. The Request Policy is of the Type AuthPolicy.
089: * This class is currently defined in the com.sun.enterprise.security.jauth
090: * package, this would be standardized in JSR 196.
091: *
092: * If the Endpoint is a Consumer (Server) Endpoint the Request Policy
093: * applies to incoming requests, if its a Provider (Client) Endpoint
094: * the policy applies to the outgoing request.
095: *
096: * @return the request AuthPolicy
097: */
098: public AuthPolicy getRequestPolicy() {
099: return mReqPolicy;
100: }
101:
102: /**
103: * Set the RequestPolicy.
104: *
105: * If the Endpoint is a Consumer (Server) Endpoint the Request Policy
106: * applies to incoming requests, if its a Provider (Client) Endpoint
107: * the policy applies to the outgoing request.
108: *
109: * @param reqPolicy is the request AuthPolicy
110: */
111: public void setRequestPolicy(AuthPolicy reqPolicy) {
112: mReqPolicy = reqPolicy;
113: }
114:
115: /**
116: * Get the ResponsePolicy. The Request Policy is of the Type AuthPolicy.
117: * This class is currently defined in the com.sun.enterprise.security.jauth
118: * package, this would be standardized in JSR 196.
119: *
120: * If the Endpoint is a Consumer (Server) Endpoint the Response Policy
121: * applies to outgoing requests, if its a Provider (Client) Endpoint
122: * the policy applies to the incoming response.
123: *
124: * @return the ResponsePolicy.
125: */
126: public AuthPolicy getResponsePolicy() {
127: return mRespPolicy;
128: }
129:
130: /**
131: * Set the ResponsePolicy.
132: *
133: * If the Endpoint is a Consumer (Server) Endpoint the Response Policy
134: * applies to outgoing requests, if its a Provider (Client) Endpoint
135: * the policy applies to the incoming response.
136: *
137: * @param respPolicy is the ResponsePolicy.
138: */
139: public void getResponsePolicy(AuthPolicy respPolicy) {
140: mRespPolicy = respPolicy;
141: }
142:
143: /**
144: * Get the Id of the Provider. If a Provider is not specified in the deployment
145: * configuration, an empty String is returned.
146: *
147: * @return the id of the Message Security Provider
148: */
149: public String getMessageProviderId() {
150: return mProviderId;
151: }
152:
153: /**
154: * Set the Id of the Provider.
155: *
156: * @param id is the name of the Message Security Provider
157: */
158: public void setMessageProviderId(String id) {
159: mProviderId = id;
160: }
161:
162: /**
163: * Get the Set of Operations to which this MessageSecPolicy applies.
164: *
165: * @return the Set of Operations to which this MessageSecPolicy applies
166: */
167: public Set getOperations() {
168: return mOperationSet;
169: }
170: }
|