| <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>HTTPNotifier.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">jUDDI Core - OpenJPA</a> > <a href="index.source.html" class="el_package">org.apache.juddi.subscription.notify</a> > <span class="el_source">HTTPNotifier.java</span></div><h1>HTTPNotifier.java</h1><pre class="source lang-java linenums">/* |
| * Copyright 2001-2008 The Apache Software Foundation. |
| * |
| * Licensed 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.apache.juddi.subscription.notify; |
| |
| import java.io.IOException; |
| import java.net.URL; |
| import java.rmi.RemoteException; |
| import java.util.Map; |
| |
| import javax.xml.namespace.QName; |
| import javax.xml.ws.BindingProvider; |
| import javax.xml.ws.Service; |
| |
| import org.apache.commons.logging.Log; |
| import org.apache.commons.logging.LogFactory; |
| import org.apache.juddi.api_v3.AccessPointType; |
| import org.apache.juddi.model.BindingTemplate; |
| import org.apache.juddi.v3.client.UDDIService; |
| import org.uddi.api_v3.DispositionReport; |
| import org.uddi.subr_v3.NotifySubscriptionListener; |
| import org.uddi.v3_service.DispositionReportFaultMessage; |
| import org.uddi.v3_service.UDDISubscriptionListenerPortType; |
| |
| public class HTTPNotifier implements Notifier { |
| |
| <span class="fc" id="L40"> private static String SUBR_V3_NAMESPACE = "urn:uddi-org:v3_service";</span> |
| <span class="fc" id="L41"> private static String SUBSCRIPTION_LISTENER_SERVICE = "UDDISubscriptionListenerImplPort";</span> |
| <span class="fc" id="L42"> Log log = LogFactory.getLog(this.getClass());</span> |
| <span class="fc" id="L43"> UDDISubscriptionListenerPortType subscriptionListenerPort = null;</span> |
| |
| public HTTPNotifier(BindingTemplate bindingTemplate) throws IOException { |
| <span class="fc" id="L46"> super();</span> |
| <span class="fc" id="L47"> String accessPointUrl = bindingTemplate.getAccessPointUrl().toLowerCase();</span> |
| <span class="pc bpc" id="L48" title="1 of 2 branches missed."> if (!accessPointUrl.startsWith("http")) {</span> |
| <span class="nc" id="L49"> log.warn("http accessPointUrl for bindingTemplate " + bindingTemplate.getEntityKey()</span> |
| + " should start with 'http' or 'https'"); |
| } |
| //fix for JIRA JUDDI-597 |
| <span class="fc" id="L53"> accessPointUrl = bindingTemplate.getAccessPointUrl();</span> |
| <span class="pc bpc" id="L54" title="1 of 2 branches missed."> if (AccessPointType.WSDL_DEPLOYMENT.toString().equalsIgnoreCase(bindingTemplate.getAccessPointType())) {</span> |
| //WSDL deployment type |
| //TODO, let user override the SUBSCRIPTION_LISTENER_SERVICE setting |
| <span class="nc" id="L57"> QName qName = new QName(SUBR_V3_NAMESPACE, SUBSCRIPTION_LISTENER_SERVICE);</span> |
| <span class="nc" id="L58"> Service service = Service.create(new URL(bindingTemplate.getAccessPointUrl()), qName);</span> |
| <span class="nc" id="L59"> subscriptionListenerPort = (UDDISubscriptionListenerPortType) service.getPort(UDDISubscriptionListenerPortType.class);</span> |
| <span class="pc bpc" id="L60" title="1 of 2 branches missed."> } else if (AccessPointType.END_POINT.toString().equalsIgnoreCase(bindingTemplate.getAccessPointType())) {</span> |
| //endpoint deployment type |
| <span class="fc" id="L62"> UDDIService uddiService = new UDDIService();</span> |
| <span class="fc" id="L63"> subscriptionListenerPort = uddiService.getUDDISubscriptionListenerPort();</span> |
| <span class="fc" id="L64"> Map<String, Object> requestContext = ((BindingProvider) subscriptionListenerPort).getRequestContext();</span> |
| <span class="fc" id="L65"> requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, accessPointUrl);</span> |
| } |
| /*if (accessPointUrl.toLowerCase().startsWith("https://")) { |
| try { |
| String file = AppConfig.getConfiguration().getString(Property.JUDDI_SUBSCRIPTION_TRUSTSTORE_FILE); |
| String type = AppConfig.getConfiguration().getString(Property.JUDDI_SUBSCRIPTION_TRUSTSTORE_TYPE); |
| String password = AppConfig.getConfiguration().getString(Property.JUDDI_SUBSCRIPTION_TRUSTSTORE_PASSWORD); |
| if (AppConfig.getConfiguration().getBoolean(Property.JUDDI_SUBSCRIPTION_TRUSTSTORE_ENCRYPTED, false)) { |
| password = CryptorFactory.getCryptor(AppConfig.getConfiguration().getString(Property.JUDDI_SUBSCRIPTION_TRUSTSTORE_CRYPTOPROVIDER)).decrypt(password); |
| } |
| |
| } catch (Exception ex) { |
| log.error(null, ex); |
| } |
| |
| }*/ |
| <span class="fc" id="L81"> }</span> |
| |
| public DispositionReport notifySubscriptionListener(NotifySubscriptionListener body) throws DispositionReportFaultMessage, RemoteException { |
| <span class="fc" id="L84"> return subscriptionListenerPort.notifySubscriptionListener(body);</span> |
| } |
| } |
| </pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.7.9.201702052155</span></div></body></html> |