<?xml version="1.0" encoding="utf-8" ?>

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF 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.
-->

<configuration>
  <appSettings>
    <!-- DEBUG, INFO, WARN, ERROR -->
    <add key="org.apache.juddi.v3.client.log.level" value="INFO" />
    <!-- options are CONSOLE, EVENTLOG, FILE. multiple values can be specified, comma delimited -->
    <add key="org.apache.juddi.v3.client.log.target" value="CONSOLE" />
    <!-- only used when target=FILE -->
    <add key="org.apache.juddi.v3.client.log.logger.file" value="pathToOutputFile" />
  </appSettings>

  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="UDDISubscriptionListenerServiceSoapBinding"  ></binding>
      </basicHttpBinding>
    </bindings>
   
    <services>
      <service
        name="org.apache.juddi.v3.client.subscription.SubscriptionCallbackListener">
        <endpoint
           binding="basicHttpBinding"
           bindingConfiguration="UDDISubscriptionListenerServiceSoapBinding"
           bindingName="UDDISubscriptionListenerServiceSoapBinding"
           bindingNamespace="org.apache.juddi.v3.client.subscription" 
           contract="org.apache.juddi.v3.client.subscription.wcf.UDDI_SubscriptionListener_PortType" >
        </endpoint>
      
      </service>
    </services>
  </system.serviceModel>
</configuration>
