Refactoring of provider buck builds.

Change-Id: I9b5e2566b83c13a8b7b086005a08a8182305ffdb
diff --git a/providers/bgp/BUCK b/providers/bgp/BUCK
new file mode 100644
index 0000000..c526f55
--- /dev/null
+++ b/providers/bgp/BUCK
@@ -0,0 +1,17 @@
+BUNDLES = [
+    '//providers/bgp/cfg:onos-providers-bgp-cfg',
+    '//providers/bgp/flow:onos-providers-bgp-flow',
+    '//providers/bgp/topology:onos-providers-bgp-topology',
+    '//protocols/bgp/api:onos-bgp-api',
+    '//protocols/bgp/ctl:onos-bgp-ctl',
+    '//protocols/bgp/bgpio:onos-bgpio',
+]
+
+onos_app (
+    title = 'BGP Provider',
+    category = 'Provider',
+    url = 'http://onosproject.org',
+    included_bundles = BUNDLES,
+    description = 'BGP protocol southbound providers.',
+)
+
diff --git a/providers/bgp/cfg/BUCK b/providers/bgp/cfg/BUCK
index 3156e95..917fc34 100644
--- a/providers/bgp/cfg/BUCK
+++ b/providers/bgp/cfg/BUCK
@@ -1,16 +1,8 @@
-SRC = 'src/main/java/org/onosproject/**/'
-
-CURRENT_NAME = 'onos-bgp-provider-cfg'
-CURRENT_TARGET = ':' + CURRENT_NAME
-
 COMPILE_DEPS = [
     '//lib:CORE_DEPS',
     '//protocols/bgp/api:onos-bgp-api',
 ]
 
-osgi_jar(
-    name = CURRENT_NAME,
-    srcs = glob([SRC + '/*.java']),
+osgi_jar_with_tests (
     deps = COMPILE_DEPS,
-    visibility = ['PUBLIC'],
 )
diff --git a/providers/bgp/flow/BUCK b/providers/bgp/flow/BUCK
index ba18ec5..917fc34 100644
--- a/providers/bgp/flow/BUCK
+++ b/providers/bgp/flow/BUCK
@@ -1,16 +1,8 @@
-SRC = 'src/main/java/org/onosproject/**/'
-
-CURRENT_NAME = 'onos-bgp-provider-flow'
-CURRENT_TARGET = ':' + CURRENT_NAME
-
 COMPILE_DEPS = [
     '//lib:CORE_DEPS',
     '//protocols/bgp/api:onos-bgp-api',
 ]
 
-osgi_jar(
-    name = CURRENT_NAME,
-    srcs = glob([SRC + '/*.java']),
+osgi_jar_with_tests (
     deps = COMPILE_DEPS,
-    visibility = ['PUBLIC'],
 )
diff --git a/providers/bgp/topology/BUCK b/providers/bgp/topology/BUCK
index 3d3aad6..e4e7041 100644
--- a/providers/bgp/topology/BUCK
+++ b/providers/bgp/topology/BUCK
@@ -1,9 +1,3 @@
-SRC = 'src/main/java/org/onosproject/**/'
-TEST = 'src/test/java/org/onosproject/**/'
-
-CURRENT_NAME = 'onos-bgp-provider-topology'
-CURRENT_TARGET = ':' + CURRENT_NAME
-
 COMPILE_DEPS = [
     '//lib:CORE_DEPS',
     '//protocols/bgp/api:onos-bgp-api',
@@ -15,18 +9,7 @@
     '//lib:TEST_ADAPTERS',
 ]
 
-osgi_jar(
-    name = CURRENT_NAME,
-    srcs = glob([SRC + '/*.java']),
+osgi_jar_with_tests (
     deps = COMPILE_DEPS,
-    visibility = ['PUBLIC'],
-)
-
-java_test(
-    name = 'tests',
-    srcs = glob([TEST + '/*.java']),
-    deps = COMPILE_DEPS +
-           TEST_DEPS +
-           [CURRENT_TARGET],
-    source_under_test = [CURRENT_TARGET],
+    test_deps = TEST_DEPS,
 )