<?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.
-->
<MetaData xmlns="http://www.osgi.org/xmlns/metadata/v1.0.0"
	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	 xsi:schemaLocation="
		 http://www.osgi.org/xmlns/metadata/v1.0.0 http://www.osgi.org/xmlns/metatype/v1.1.0/metatype.xsd
	 ">
	 <OCD description="" name="Zookeeper server config" id="org.apache.cxf.dosgi.discovery.zookeeper.server">
        <AD id="clientPort" required="false" type="String" default="2181" description=""/>
	 	<AD id="tickTime" required="false" type="String" default="2000" description=""/>
        <AD id="initLimit" required="false" type="String" default="10" description=""/>
        <AD id="syncLimit" required="false" type="String" default="5" description=""/>
	 </OCD>
	 <Designate pid="org.apache.cxf.dosgi.discovery.zookeeper.server">
	 	<Object ocdref="org.apache.cxf.dosgi.discovery.zookeeper.server"/>
	 </Designate>
</MetaData>