diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
index 79efd7c..ede50f4 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
@@ -172,8 +172,9 @@
     private List<OFInstruction> getInstructions(OFFlowMod entry) {
         switch (entry.getVersion()) {
             case OF_10:
-                return Lists.newArrayList(
-                        OFFactoryVer13.INSTANCE.instructions().applyActions(entry.getActions()));
+                return Lists.newArrayList(OFFactoryVer13.INSTANCE.instructions()
+                                                  .applyActions(
+                                                          entry.getActions()));
             case OF_11:
             case OF_12:
             case OF_13:
@@ -316,6 +317,9 @@
                 case POP_VLAN:
                     builder.popVlan();
                     break;
+                case PUSH_VLAN:
+                    builder.pushVlan();
+                    break;
                 case STRIP_VLAN:
                     builder.stripVlan();
                     break;
@@ -323,7 +327,6 @@
                 case SET_TP_SRC:
                 case POP_PBB:
                 case PUSH_PBB:
-                case PUSH_VLAN:
                 case SET_MPLS_LABEL:
                 case SET_MPLS_TC:
                 case SET_MPLS_TTL:
diff --git a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupBucketEntryBuilder.java b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupBucketEntryBuilder.java
index bbbf8d2..c670b63 100644
--- a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupBucketEntryBuilder.java
+++ b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupBucketEntryBuilder.java
@@ -84,7 +84,7 @@
     /**
      * Builds a GroupBuckets.
      *
-     * @return GroupBuckets object, a list of GroupBuck
+     * @return GroupBuckets object, a list of GroupBuckets
      */
     public GroupBuckets build() {
         List<GroupBucket> bucketList = Lists.newArrayList();
