Add gRPC API for multicast service.

Change-Id: I003b982145c788e74c39f525122d58f3204b1c0e
diff --git a/incubator/grpc/features.xml b/incubator/grpc/features.xml
new file mode 100644
index 0000000..7f5d98c
--- /dev/null
+++ b/incubator/grpc/features.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ Copyright 2016-present Open Networking Laboratory
+  ~
+  ~ 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.
+  -->
+<features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="${project.artifactId}-${project.version}">
+    <feature name="${project.artifactId}" version="${project.version}"
+             description="${project.description}">
+        <feature version="${project.version}">grpc</feature>
+
+        <bundle>mvn:com.google.protobuf/protobuf-java/3.0.0</bundle>
+        <bundle>mvn:${project.groupId}/${project.artifactId}/${project.version}</bundle>
+    </feature>
+
+    <feature name="grpc-netty" version="${project.version}"
+             description="gRPC Netty dependencies">
+        <bundle>mvn:io.netty/netty-common/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-buffer/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-transport/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-handler/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-codec/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-codec-http/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-codec-http2/${grpc.netty.version}</bundle>
+        <bundle>mvn:io.netty/netty-resolver/${grpc.netty.version}</bundle>
+    </feature>
+
+    <feature name="grpc" version="${project.version}" description="gRPC dependencies">
+        <feature version="${project.version}">grpc-netty</feature>
+        <bundle>wrap:mvn:com.google.auth/google-auth-library-credentials/${google.auth.version}$Bundle-SymbolicName=com.google.auth.google-auth-library-credentials&amp;Bundle-Version=${google.auth.version}</bundle>
+        <bundle>wrap:mvn:com.google.auth/google-auth-library-oauth2-http/${google.auth.version}$Bundle-SymbolicName=com.google.auth.google-auth-library-oauth2-http&amp;Bundle-Version=${google.auth.version}</bundle>
+        <!-- Export for io.grpc.internal required for DnsNameResolverProvider -->
+        <bundle>wrap:mvn:io.grpc/grpc-core/${grpc.version}$Bundle-SymbolicName=io.grpc.grpc-core&amp;Bundle-Version=${grpc.package.version}&amp;Export-Package=*;version=${grpc.package.version},io.grpc.internal;version=${grpc.package.version}&amp;</bundle>
+        <bundle>wrap:mvn:io.grpc/grpc-protobuf-lite/${grpc.version}$Bundle-SymbolicName=io.grpc.grpc-protobuf-lite&amp;Bundle-Version=${grpc.package.version}&amp;</bundle>
+        <bundle>wrap:mvn:io.grpc/grpc-protobuf/${grpc.version}$Bundle-SymbolicName=io.grpc.grpc-protobuf&amp;Bundle-Version=${grpc.package.version}&amp;</bundle>
+        <bundle>wrap:mvn:io.grpc/grpc-stub/${grpc.version}$Bundle-SymbolicName=io.grpc.grpc-stub&amp;Bundle-Version=${grpc.package.version}&amp;</bundle>
+        <bundle>wrap:mvn:io.grpc/grpc-netty/${grpc.version}$Bundle-SymbolicName=io.grpc.grpc-netty&amp;Bundle-Version=${grpc.package.version}&amp;Import-Package=io.netty.*;version=${grpc.netty.package.version},*</bundle>
+        <bundle>wrap:mvn:io.grpc/grpc-auth/${grpc.version}$Bundle-SymbolicName=io.grpc.grpc-auth&amp;Bundle-Version=${grpc.package.version}&amp;Import-Package=javax.net.ssl,*</bundle>
+    </feature>
+
+</features>