|
Oracle Fusion Middleware Java API Reference for Oracle Web Services Manager 11g (11.1.1) E10689-01 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object
oracle.wsm.policyimport.compatibility.PolicyCompatibilityChecker
public class PolicyCompatibilityChecker
This class is responsible for checking if the Client Side Policies associated with a Policy Subject are compatible with the Server Side Policies associated with the same Policy Subject.
. Design
The basic algorithm is as follows
Input:
1) WSDL with Server Side Policies
2) Sca Reference Binding Node/Policy Subject representing the client
3) Policies attached to Sca Reference Binding Node/Policy Subject
Output:
4) PolicyCompatibilityResult - where the results of the Policy Compatibility check are captures
Algorithm
1) Construct PolicySet based on Sca Reference Binding Node and List of Policies
Output: PolicySet
2) Call Advertisement Engine for Advertising of Client Side Policies
Output: Advertisement Context - which contains the following Maps
Policy Map: <PolicyId, Policy>
Policy Attachment Map:
3) Merge Client Side Policies for each WSDL Policy Subject
(ex: The Reference binding node points to a WSDL Port , so the relevant policy subjects are
a) Port,
b) binding associated with that Port,
c) all operations that are part of the binding
d) input, output, faults for each operation in the binding
Result.1: A Map containing <WSDL Policy Subject, The Merged Policy For The WSDL Policy Subject>
4) Merging of Server side Policies attached in WSDL
a)Identify the WSDL Port pointed to by the Reference/Binding port attribute
b)For each WSDL Policy Subject identify all the Policies attached to that Subject either through PolicyReference or directly as a Policy.
c)Merge All Policies for each WSDL Policy Subject
Result.2: A Map containing <WSDL Policy Subject, The Merged Policy For The WSDL Policy Subject>
5) Intersect the Merged Client Policy and the Server Policy for each WSDL Policy Subject
Take the two Maps (*Result.1 and Result.2*) and for each WSDL Subject, intersect the Merged Policy for that Subject.
Result.3: Map containing <WSDLPolicySubject, IntersectedPolicy>
If the Intersected Policy does not have any alternatives thus resulting in policy compatibility failure, then add the WSDL Policy Subject Fragment and the IIntersectionContext
Constructor Summary | |
---|---|
PolicyCompatibilityChecker() |
Method Summary | |
---|---|
void |
checkCompatibility(javax.wsdl.Definition def1, javax.wsdl.Definition def2, IPolicyCompatibilityResultInternal result) Checks the policy compatibility btw two WSDLs |
void |
checkCompatibility(javax.wsdl.Definition def, Element scaReferenceBindingNode, List<IPolicy> policies, Map<String,String> configuration, IPolicyCompatibilityResultInternal result) Checks if the client side policies attached to a SCA Composite Reference/binding is compatible with the Server Side Policies. |
void |
checkCompatibility(javax.wsdl.Definition def, IPolicySubject polSubj, List<IPolicy> policies, Map<String,String> configuration, IPolicyCompatibilityResultInternal result) Checks if the client side policies attached to a SCA Composite Reference/binding is compatible with the Server Side Policies. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public PolicyCompatibilityChecker()
Method Detail |
---|
public void checkCompatibility(javax.wsdl.Definition def, Element scaReferenceBindingNode, List<IPolicy> policies, Map<String,String> configuration, IPolicyCompatibilityResultInternal result) throws CompatibilityCheckException
def
- the WSDL DefinitionscaReferenceBindingNode
- - The SCA Reference Binding that has policy references to the client side Policiespolicies
- - List of Policies attached to the SCA Reference/binding nodeconfiguration
- - configuration that indicates whether ADVERTISEMENT LEVEL is INTEROP (?wsdl) or ORACLE (?orawsdl)result
- - captures the results of the compatibility check.CompatibilityCheckException
public void checkCompatibility(javax.wsdl.Definition def, IPolicySubject polSubj, List<IPolicy> policies, Map<String,String> configuration, IPolicyCompatibilityResultInternal result) throws CompatibilityCheckException
def
- the WSDL DefinitionscaReferenceBindingNode
- - The SCA Reference Binding that has policy references to the client side Policiespolicies
- - List of Policies attached to the SCA Reference/binding nodeconfiguration
- - configuration that indicates whether ADVERTISEMENT LEVEL is INTEROP (?wsdl) or ORACLE (?orawsdl)result
- - captures the results of the policy compatibility checkCompatibilityCheckException
public void checkCompatibility(javax.wsdl.Definition def1, javax.wsdl.Definition def2, IPolicyCompatibilityResultInternal result) throws CompatibilityCheckException
def1
- - First WSDL containing Policiesdef2
- - Second WSDL containing Policiesresult
- - the results of the Policy Incompatibility that need to be populated.CompatibilityCheckException
- CompatibilityCheckException can be thrown due to a variety of reasons including if the WSDL Policy Subjects for which the compatibility check is to be performed are themselves incompatible, etc.
|
Oracle Fusion Middleware Java API Reference for Oracle Web Services Manager 11g (11.1.1) E10689-01 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |