private void updateClientPolicy ( Message m ) { if ( ! clientSidePolicyCalced ) { PolicyDataEngine policyEngine = bus . getExtension ( PolicyDataEngine . class ) ; if ( policyEngine != null && endpointInfo . getService ( ) != null ) { clientSidePolicy = policyEngine . getClientEndpointPolicy ( m , endpointInfo , this , new ClientPolicyCalculator ( ) ) ; if ( clientSidePolicy != null ) { clientSidePolicy . removePropertyChangeListener ( this ) ; //make sure we aren't added twice clientSidePolicy . addPropertyChangeListener ( this ) ; } } } clientSidePolicyCalced = true ; }
updates the HTTPClientPolicy that is compatible with the assertions included in the service endpoint operation and message policy subjects if a PolicyDataEngine is installed