diff --git a/incubator/protobuf/models/src/main/proto/net/ConnectPointProto.proto b/incubator/protobuf/models/src/main/proto/net/ConnectPointProto.proto
index e0444b4..9607b7e 100644
--- a/incubator/protobuf/models/src/main/proto/net/ConnectPointProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/ConnectPointProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/DeviceProto.proto b/incubator/protobuf/models/src/main/proto/net/DeviceProto.proto
index 54e478a..9726d84 100644
--- a/incubator/protobuf/models/src/main/proto/net/DeviceProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/DeviceProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/DisjointPathProto.proto b/incubator/protobuf/models/src/main/proto/net/DisjointPathProto.proto
index 55d916c..e80d4ec 100644
--- a/incubator/protobuf/models/src/main/proto/net/DisjointPathProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/DisjointPathProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/HostIdProto.proto b/incubator/protobuf/models/src/main/proto/net/HostIdProto.proto
index 32830e9..a0aae4c 100644
--- a/incubator/protobuf/models/src/main/proto/net/HostIdProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/HostIdProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/HostLocationProto.proto b/incubator/protobuf/models/src/main/proto/net/HostLocationProto.proto
index 44961a5..9e44eba 100644
--- a/incubator/protobuf/models/src/main/proto/net/HostLocationProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/HostLocationProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/HostProto.proto b/incubator/protobuf/models/src/main/proto/net/HostProto.proto
index e5e7b5f..ba38fab 100644
--- a/incubator/protobuf/models/src/main/proto/net/HostProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/HostProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/LinkProto.proto b/incubator/protobuf/models/src/main/proto/net/LinkProto.proto
index 9b41dc4..e5ce70a 100644
--- a/incubator/protobuf/models/src/main/proto/net/LinkProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/LinkProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/MastershipRoleProto.proto b/incubator/protobuf/models/src/main/proto/net/MastershipRoleProto.proto
index d5d9ecb..24508d5 100644
--- a/incubator/protobuf/models/src/main/proto/net/MastershipRoleProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/MastershipRoleProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/PathProto.proto b/incubator/protobuf/models/src/main/proto/net/PathProto.proto
index c906f24..02343ae 100644
--- a/incubator/protobuf/models/src/main/proto/net/PathProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/PathProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/PortProto.proto b/incubator/protobuf/models/src/main/proto/net/PortProto.proto
index e734fae..09282e3 100644
--- a/incubator/protobuf/models/src/main/proto/net/PortProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/PortProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/ProviderIdProto.proto b/incubator/protobuf/models/src/main/proto/net/ProviderIdProto.proto
index 3e470c7..9f4e4cf 100644
--- a/incubator/protobuf/models/src/main/proto/net/ProviderIdProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/ProviderIdProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/RegionProto.proto b/incubator/protobuf/models/src/main/proto/net/RegionProto.proto
index 359008f..b760b6e 100644
--- a/incubator/protobuf/models/src/main/proto/net/RegionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/RegionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/device/DeviceDescriptionProto.proto b/incubator/protobuf/models/src/main/proto/net/device/DeviceDescriptionProto.proto
index c1d6e22..d2eb2c7 100644
--- a/incubator/protobuf/models/src/main/proto/net/device/DeviceDescriptionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/device/DeviceDescriptionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.device.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/device/DeviceEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/device/DeviceEnumsProto.proto
index 52ecc75..e8713d3 100644
--- a/incubator/protobuf/models/src/main/proto/net/device/DeviceEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/device/DeviceEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.device.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/device/DeviceEventProto.proto b/incubator/protobuf/models/src/main/proto/net/device/DeviceEventProto.proto
index 87e7c08..f973bcc 100644
--- a/incubator/protobuf/models/src/main/proto/net/device/DeviceEventProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/device/DeviceEventProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.device.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/device/PortDescriptionProto.proto b/incubator/protobuf/models/src/main/proto/net/device/PortDescriptionProto.proto
index 3097a81..52a6e23 100644
--- a/incubator/protobuf/models/src/main/proto/net/device/PortDescriptionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/device/PortDescriptionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.device.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/device/PortEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/device/PortEnumsProto.proto
index e7892f8..28757fc 100644
--- a/incubator/protobuf/models/src/main/proto/net/device/PortEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/device/PortEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.device.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/device/PortStatisticsProto.proto b/incubator/protobuf/models/src/main/proto/net/device/PortStatisticsProto.proto
index b089ec9..af0b039 100644
--- a/incubator/protobuf/models/src/main/proto/net/device/PortStatisticsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/device/PortStatisticsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.device.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/flow/TrafficSelectorProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/TrafficSelectorProto.proto
index 831f149..74a5bce 100644
--- a/incubator/protobuf/models/src/main/proto/net/flow/TrafficSelectorProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/flow/TrafficSelectorProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.flow.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/flow/TrafficTreatmentProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/TrafficTreatmentProto.proto
index b2d6236..428e218 100644
--- a/incubator/protobuf/models/src/main/proto/net/flow/TrafficTreatmentProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/flow/TrafficTreatmentProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.flow.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/flow/criteria/CriterionProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/criteria/CriterionProto.proto
index cfbf896..cc26526 100644
--- a/incubator/protobuf/models/src/main/proto/net/flow/criteria/CriterionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/flow/criteria/CriterionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.flow.criteria.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionProto.proto
index 095bd53..472899f 100644
--- a/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.flow.instructions.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionsProto.proto b/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionsProto.proto
index 93c4089..7491623 100644
--- a/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/flow/instructions/InstructionsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.flow.instructions.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/host/HostDescriptionProto.proto b/incubator/protobuf/models/src/main/proto/net/host/HostDescriptionProto.proto
index f9f622a..733fd8c 100644
--- a/incubator/protobuf/models/src/main/proto/net/host/HostDescriptionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/host/HostDescriptionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.host.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/host/HostEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/host/HostEnumsProto.proto
index 1b2c352..7d45f29 100644
--- a/incubator/protobuf/models/src/main/proto/net/host/HostEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/host/HostEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.host.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/host/HostEventProto.proto b/incubator/protobuf/models/src/main/proto/net/host/HostEventProto.proto
index 5a538dc..c88dc20 100644
--- a/incubator/protobuf/models/src/main/proto/net/host/HostEventProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/host/HostEventProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.host.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/link/LinkDescriptionProto.proto b/incubator/protobuf/models/src/main/proto/net/link/LinkDescriptionProto.proto
index d24545d..9519f3c 100644
--- a/incubator/protobuf/models/src/main/proto/net/link/LinkDescriptionProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/link/LinkDescriptionProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.link.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/link/LinkEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/link/LinkEnumsProto.proto
index 0f06aa0..ea76f9e 100644
--- a/incubator/protobuf/models/src/main/proto/net/link/LinkEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/link/LinkEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.link.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/link/LinkEventProto.proto b/incubator/protobuf/models/src/main/proto/net/link/LinkEventProto.proto
index 1ad93b7..3772109 100644
--- a/incubator/protobuf/models/src/main/proto/net/link/LinkEventProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/link/LinkEventProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.link.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/meter/BandEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/meter/BandEnumsProto.proto
index 10879a7..48dbe61 100644
--- a/incubator/protobuf/models/src/main/proto/net/meter/BandEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/meter/BandEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.meter.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/meter/BandProto.proto b/incubator/protobuf/models/src/main/proto/net/meter/BandProto.proto
index ca7f28b..4757c46 100644
--- a/incubator/protobuf/models/src/main/proto/net/meter/BandProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/meter/BandProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.meter.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/meter/MeterEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/meter/MeterEnumsProto.proto
index 3d1a67f..1b0bbf5 100644
--- a/incubator/protobuf/models/src/main/proto/net/meter/MeterEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/meter/MeterEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.meter.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/meter/MeterEventProto.proto b/incubator/protobuf/models/src/main/proto/net/meter/MeterEventProto.proto
index 54ad1cc..898692a 100644
--- a/incubator/protobuf/models/src/main/proto/net/meter/MeterEventProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/meter/MeterEventProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.meter.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/meter/MeterProto.proto b/incubator/protobuf/models/src/main/proto/net/meter/MeterProto.proto
index 02be225..9478394 100644
--- a/incubator/protobuf/models/src/main/proto/net/meter/MeterProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/meter/MeterProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.meter.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/meter/MeterRequestProto.proto b/incubator/protobuf/models/src/main/proto/net/meter/MeterRequestProto.proto
index 5fdebb6..be60f11 100644
--- a/incubator/protobuf/models/src/main/proto/net/meter/MeterRequestProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/meter/MeterRequestProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.meter.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/packet/OutboundPacketProto.proto b/incubator/protobuf/models/src/main/proto/net/packet/OutboundPacketProto.proto
index 00e0bb9..9d943e4 100644
--- a/incubator/protobuf/models/src/main/proto/net/packet/OutboundPacketProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/packet/OutboundPacketProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.packet.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/packet/PacketEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/packet/PacketEnumsProto.proto
index ce8352f..db6e5ca 100644
--- a/incubator/protobuf/models/src/main/proto/net/packet/PacketEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/packet/PacketEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.packet.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/packet/PacketEventProto.proto b/incubator/protobuf/models/src/main/proto/net/packet/PacketEventProto.proto
index f482780..07d9580 100644
--- a/incubator/protobuf/models/src/main/proto/net/packet/PacketEventProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/packet/PacketEventProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.packet.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorEntryProto.proto b/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorEntryProto.proto
index 918e750..b0b90b2 100644
--- a/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorEntryProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorEntryProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.packet.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorProto.proto b/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorProto.proto
index 8cb4499..8a71674 100644
--- a/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/packet/PacketProcessorProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.packet.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/packet/PacketRequestProto.proto b/incubator/protobuf/models/src/main/proto/net/packet/PacketRequestProto.proto
index 9a0e491..0b61a66 100644
--- a/incubator/protobuf/models/src/main/proto/net/packet/PacketRequestProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/packet/PacketRequestProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.packet.models";
 
diff --git a/incubator/protobuf/models/src/main/proto/net/region/RegionEnumsProto.proto b/incubator/protobuf/models/src/main/proto/net/region/RegionEnumsProto.proto
index c7b449d..67bf53f 100644
--- a/incubator/protobuf/models/src/main/proto/net/region/RegionEnumsProto.proto
+++ b/incubator/protobuf/models/src/main/proto/net/region/RegionEnumsProto.proto
@@ -1,3 +1,18 @@
+/*
+ * Copyright 2017-present Open Networking 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.
+ */
 syntax = "proto3";
 option java_package = "org.onosproject.grpc.net.region.models";
 
