initial add - go fmt on grpc

Change-Id: Ib0afadd2fe5571d1456a091f94f5644458f7d3f4
diff --git a/vendor/github.com/skydive-project/goloxi/of13/action_id.go b/vendor/github.com/skydive-project/goloxi/of13/action_id.go
new file mode 100644
index 0000000..68cb38a
--- /dev/null
+++ b/vendor/github.com/skydive-project/goloxi/of13/action_id.go
@@ -0,0 +1,2507 @@
+/*
+ * Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
+ * Copyright (c) 2011, 2012 Open Networking Foundation
+ * Copyright 2013, Big Switch Networks, Inc. This library was generated by the LoxiGen Compiler.
+ * Copyright 2018, Red Hat, Inc.
+ */
+// Automatically generated by LOXI from template module.go
+// Do not modify
+
+package of13
+
+import (
+	"encoding/binary"
+	"fmt"
+
+	"github.com/skydive-project/goloxi"
+)
+
+type ActionId struct {
+	Type uint16
+	Len  uint16
+}
+
+type IActionId interface {
+	goloxi.Serializable
+	GetType() uint16
+	GetLen() uint16
+}
+
+func (self *ActionId) GetType() uint16 {
+	return self.Type
+}
+
+func (self *ActionId) SetType(v uint16) {
+	self.Type = v
+}
+
+func (self *ActionId) GetLen() uint16 {
+	return self.Len
+}
+
+func (self *ActionId) SetLen(v uint16) {
+	self.Len = v
+}
+
+func (self *ActionId) Serialize(encoder *goloxi.Encoder) error {
+
+	encoder.PutUint16(uint16(self.Type))
+	encoder.PutUint16(uint16(self.Len))
+
+	return nil
+}
+
+func DecodeActionId(decoder *goloxi.Decoder) (IActionId, error) {
+	_actionid := &ActionId{}
+	if decoder.Length() < 4 {
+		return nil, fmt.Errorf("ActionId packet too short: %d < 4", decoder.Length())
+	}
+	_actionid.Type = uint16(decoder.ReadUint16())
+	_actionid.Len = uint16(decoder.ReadUint16())
+	oldDecoder := decoder
+	defer func() { decoder = oldDecoder }()
+	decoder = decoder.SliceDecoder(int(_actionid.Len), 2+2)
+
+	switch _actionid.Type {
+	case 0:
+		return DecodeActionIdOutput(_actionid, decoder)
+	case 11:
+		return DecodeActionIdCopyTtlOut(_actionid, decoder)
+	case 12:
+		return DecodeActionIdCopyTtlIn(_actionid, decoder)
+	case 15:
+		return DecodeActionIdSetMplsTtl(_actionid, decoder)
+	case 16:
+		return DecodeActionIdDecMplsTtl(_actionid, decoder)
+	case 17:
+		return DecodeActionIdPushVlan(_actionid, decoder)
+	case 18:
+		return DecodeActionIdPopVlan(_actionid, decoder)
+	case 19:
+		return DecodeActionIdPushMpls(_actionid, decoder)
+	case 20:
+		return DecodeActionIdPopMpls(_actionid, decoder)
+	case 21:
+		return DecodeActionIdSetQueue(_actionid, decoder)
+	case 22:
+		return DecodeActionIdGroup(_actionid, decoder)
+	case 23:
+		return DecodeActionIdSetNwTtl(_actionid, decoder)
+	case 24:
+		return DecodeActionIdDecNwTtl(_actionid, decoder)
+	case 25:
+		return DecodeActionIdSetField(_actionid, decoder)
+	case 26:
+		return DecodeActionIdPushPbb(_actionid, decoder)
+	case 27:
+		return DecodeActionIdPopPbb(_actionid, decoder)
+	case 65535:
+		return DecodeActionIdExperimenter(_actionid, decoder)
+	default:
+		return _actionid, nil
+	}
+}
+
+func NewActionId(_type uint16) *ActionId {
+	obj := &ActionId{}
+	obj.Type = _type
+	return obj
+}
+
+type ActionIdExperimenter struct {
+	*ActionId
+	Experimenter uint32
+}
+
+type IActionIdExperimenter interface {
+	IActionId
+	GetExperimenter() uint32
+}
+
+func (self *ActionIdExperimenter) GetExperimenter() uint32 {
+	return self.Experimenter
+}
+
+func (self *ActionIdExperimenter) SetExperimenter(v uint32) {
+	self.Experimenter = v
+}
+
+func (self *ActionIdExperimenter) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	encoder.PutUint32(uint32(self.Experimenter))
+
+	return nil
+}
+
+func DecodeActionIdExperimenter(parent *ActionId, decoder *goloxi.Decoder) (IActionIdExperimenter, error) {
+	_actionidexperimenter := &ActionIdExperimenter{ActionId: parent}
+	if decoder.Length() < 4 {
+		return nil, fmt.Errorf("ActionIdExperimenter packet too short: %d < 4", decoder.Length())
+	}
+	_actionidexperimenter.Experimenter = uint32(decoder.ReadUint32())
+
+	switch _actionidexperimenter.Experimenter {
+	case 8992:
+		return DecodeActionIdNicira(_actionidexperimenter, decoder)
+	case 6035143:
+		return DecodeActionIdBsn(_actionidexperimenter, decoder)
+	default:
+		return _actionidexperimenter, nil
+	}
+}
+
+func NewActionIdExperimenter(_experimenter uint32) *ActionIdExperimenter {
+	obj := &ActionIdExperimenter{
+		ActionId: NewActionId(65535),
+	}
+	obj.Experimenter = _experimenter
+	return obj
+}
+
+type ActionIdBsn struct {
+	*ActionIdExperimenter
+	Subtype uint32
+}
+
+type IActionIdBsn interface {
+	IActionIdExperimenter
+	GetSubtype() uint32
+}
+
+func (self *ActionIdBsn) GetSubtype() uint32 {
+	return self.Subtype
+}
+
+func (self *ActionIdBsn) SetSubtype(v uint32) {
+	self.Subtype = v
+}
+
+func (self *ActionIdBsn) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdExperimenter.Serialize(encoder); err != nil {
+		return err
+	}
+
+	encoder.PutUint32(uint32(self.Subtype))
+
+	return nil
+}
+
+func DecodeActionIdBsn(parent *ActionIdExperimenter, decoder *goloxi.Decoder) (IActionIdBsn, error) {
+	_actionidbsn := &ActionIdBsn{ActionIdExperimenter: parent}
+	if decoder.Length() < 4 {
+		return nil, fmt.Errorf("ActionIdBsn packet too short: %d < 4", decoder.Length())
+	}
+	_actionidbsn.Subtype = uint32(decoder.ReadUint32())
+
+	switch _actionidbsn.Subtype {
+	case 1:
+		return DecodeActionIdBsnMirror(_actionidbsn, decoder)
+	case 2:
+		return DecodeActionIdBsnSetTunnelDst(_actionidbsn, decoder)
+	case 4:
+		return DecodeActionIdBsnChecksum(_actionidbsn, decoder)
+	case 5:
+		return DecodeActionIdBsnGentable(_actionidbsn, decoder)
+	default:
+		return _actionidbsn, nil
+	}
+}
+
+func NewActionIdBsn(_subtype uint32) *ActionIdBsn {
+	obj := &ActionIdBsn{
+		ActionIdExperimenter: NewActionIdExperimenter(6035143),
+	}
+	obj.Subtype = _subtype
+	return obj
+}
+
+type ActionIdBsnChecksum struct {
+	*ActionIdBsn
+}
+
+type IActionIdBsnChecksum interface {
+	IActionIdBsn
+}
+
+func (self *ActionIdBsnChecksum) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdBsn.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdBsnChecksum(parent *ActionIdBsn, decoder *goloxi.Decoder) (*ActionIdBsnChecksum, error) {
+	_actionidbsnchecksum := &ActionIdBsnChecksum{ActionIdBsn: parent}
+	return _actionidbsnchecksum, nil
+}
+
+func NewActionIdBsnChecksum() *ActionIdBsnChecksum {
+	obj := &ActionIdBsnChecksum{
+		ActionIdBsn: NewActionIdBsn(4),
+	}
+	return obj
+}
+
+type ActionIdBsnGentable struct {
+	*ActionIdBsn
+}
+
+type IActionIdBsnGentable interface {
+	IActionIdBsn
+}
+
+func (self *ActionIdBsnGentable) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdBsn.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdBsnGentable(parent *ActionIdBsn, decoder *goloxi.Decoder) (*ActionIdBsnGentable, error) {
+	_actionidbsngentable := &ActionIdBsnGentable{ActionIdBsn: parent}
+	return _actionidbsngentable, nil
+}
+
+func NewActionIdBsnGentable() *ActionIdBsnGentable {
+	obj := &ActionIdBsnGentable{
+		ActionIdBsn: NewActionIdBsn(5),
+	}
+	return obj
+}
+
+type ActionIdBsnMirror struct {
+	*ActionIdBsn
+}
+
+type IActionIdBsnMirror interface {
+	IActionIdBsn
+}
+
+func (self *ActionIdBsnMirror) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdBsn.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdBsnMirror(parent *ActionIdBsn, decoder *goloxi.Decoder) (*ActionIdBsnMirror, error) {
+	_actionidbsnmirror := &ActionIdBsnMirror{ActionIdBsn: parent}
+	return _actionidbsnmirror, nil
+}
+
+func NewActionIdBsnMirror() *ActionIdBsnMirror {
+	obj := &ActionIdBsnMirror{
+		ActionIdBsn: NewActionIdBsn(1),
+	}
+	return obj
+}
+
+type ActionIdBsnSetTunnelDst struct {
+	*ActionIdBsn
+}
+
+type IActionIdBsnSetTunnelDst interface {
+	IActionIdBsn
+}
+
+func (self *ActionIdBsnSetTunnelDst) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdBsn.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdBsnSetTunnelDst(parent *ActionIdBsn, decoder *goloxi.Decoder) (*ActionIdBsnSetTunnelDst, error) {
+	_actionidbsnsettunneldst := &ActionIdBsnSetTunnelDst{ActionIdBsn: parent}
+	return _actionidbsnsettunneldst, nil
+}
+
+func NewActionIdBsnSetTunnelDst() *ActionIdBsnSetTunnelDst {
+	obj := &ActionIdBsnSetTunnelDst{
+		ActionIdBsn: NewActionIdBsn(2),
+	}
+	return obj
+}
+
+type ActionIdCopyTtlIn struct {
+	*ActionId
+}
+
+type IActionIdCopyTtlIn interface {
+	IActionId
+}
+
+func (self *ActionIdCopyTtlIn) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdCopyTtlIn(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdCopyTtlIn, error) {
+	_actionidcopyttlin := &ActionIdCopyTtlIn{ActionId: parent}
+	return _actionidcopyttlin, nil
+}
+
+func NewActionIdCopyTtlIn() *ActionIdCopyTtlIn {
+	obj := &ActionIdCopyTtlIn{
+		ActionId: NewActionId(12),
+	}
+	return obj
+}
+
+type ActionIdCopyTtlOut struct {
+	*ActionId
+}
+
+type IActionIdCopyTtlOut interface {
+	IActionId
+}
+
+func (self *ActionIdCopyTtlOut) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdCopyTtlOut(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdCopyTtlOut, error) {
+	_actionidcopyttlout := &ActionIdCopyTtlOut{ActionId: parent}
+	return _actionidcopyttlout, nil
+}
+
+func NewActionIdCopyTtlOut() *ActionIdCopyTtlOut {
+	obj := &ActionIdCopyTtlOut{
+		ActionId: NewActionId(11),
+	}
+	return obj
+}
+
+type ActionIdDecMplsTtl struct {
+	*ActionId
+}
+
+type IActionIdDecMplsTtl interface {
+	IActionId
+}
+
+func (self *ActionIdDecMplsTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdDecMplsTtl(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdDecMplsTtl, error) {
+	_actioniddecmplsttl := &ActionIdDecMplsTtl{ActionId: parent}
+	return _actioniddecmplsttl, nil
+}
+
+func NewActionIdDecMplsTtl() *ActionIdDecMplsTtl {
+	obj := &ActionIdDecMplsTtl{
+		ActionId: NewActionId(16),
+	}
+	return obj
+}
+
+type ActionIdDecNwTtl struct {
+	*ActionId
+}
+
+type IActionIdDecNwTtl interface {
+	IActionId
+}
+
+func (self *ActionIdDecNwTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdDecNwTtl(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdDecNwTtl, error) {
+	_actioniddecnwttl := &ActionIdDecNwTtl{ActionId: parent}
+	return _actioniddecnwttl, nil
+}
+
+func NewActionIdDecNwTtl() *ActionIdDecNwTtl {
+	obj := &ActionIdDecNwTtl{
+		ActionId: NewActionId(24),
+	}
+	return obj
+}
+
+type ActionIdGroup struct {
+	*ActionId
+}
+
+type IActionIdGroup interface {
+	IActionId
+}
+
+func (self *ActionIdGroup) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdGroup(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdGroup, error) {
+	_actionidgroup := &ActionIdGroup{ActionId: parent}
+	return _actionidgroup, nil
+}
+
+func NewActionIdGroup() *ActionIdGroup {
+	obj := &ActionIdGroup{
+		ActionId: NewActionId(22),
+	}
+	return obj
+}
+
+type ActionIdNicira struct {
+	*ActionIdExperimenter
+	Subtype uint16
+}
+
+type IActionIdNicira interface {
+	IActionIdExperimenter
+	GetSubtype() uint16
+}
+
+func (self *ActionIdNicira) GetSubtype() uint16 {
+	return self.Subtype
+}
+
+func (self *ActionIdNicira) SetSubtype(v uint16) {
+	self.Subtype = v
+}
+
+func (self *ActionIdNicira) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdExperimenter.Serialize(encoder); err != nil {
+		return err
+	}
+
+	encoder.PutUint16(uint16(self.Subtype))
+
+	return nil
+}
+
+func DecodeActionIdNicira(parent *ActionIdExperimenter, decoder *goloxi.Decoder) (IActionIdNicira, error) {
+	_actionidnicira := &ActionIdNicira{ActionIdExperimenter: parent}
+	if decoder.Length() < 2 {
+		return nil, fmt.Errorf("ActionIdNicira packet too short: %d < 2", decoder.Length())
+	}
+	_actionidnicira.Subtype = uint16(decoder.ReadUint16())
+
+	switch _actionidnicira.Subtype {
+	case 1:
+		return DecodeActionIdNxResubmit(_actionidnicira, decoder)
+	case 2:
+		return DecodeActionIdNxSetTunnel(_actionidnicira, decoder)
+	case 4:
+		return DecodeActionIdNxSetQueue(_actionidnicira, decoder)
+	case 5:
+		return DecodeActionIdNxPopQueue(_actionidnicira, decoder)
+	case 6:
+		return DecodeActionIdNxRegMove(_actionidnicira, decoder)
+	case 7:
+		return DecodeActionIdNxRegLoad(_actionidnicira, decoder)
+	case 8:
+		return DecodeActionIdNxNote(_actionidnicira, decoder)
+	case 9:
+		return DecodeActionIdNxSetTunnel64(_actionidnicira, decoder)
+	case 10:
+		return DecodeActionIdNxMultipath(_actionidnicira, decoder)
+	case 12:
+		return DecodeActionIdNxBundle(_actionidnicira, decoder)
+	case 13:
+		return DecodeActionIdNxBundleLoadInPort(_actionidnicira, decoder)
+	case 14:
+		return DecodeActionIdResubmit(_actionidnicira, decoder)
+	case 15:
+		return DecodeActionIdNxOutputReg(_actionidnicira, decoder)
+	case 16:
+		return DecodeActionIdNxLearn(_actionidnicira, decoder)
+	case 17:
+		return DecodeActionIdNxExit(_actionidnicira, decoder)
+	case 18:
+		return DecodeActionIdNiciraDecTtl(_actionidnicira, decoder)
+	case 19:
+		return DecodeActionIdNxFinTimeout(_actionidnicira, decoder)
+	case 20:
+		return DecodeActionIdNxController(_actionidnicira, decoder)
+	case 21:
+		return DecodeActionIdNxDecTtlCntIds(_actionidnicira, decoder)
+	case 22:
+		return DecodeActionIdNxWriteMetadata(_actionidnicira, decoder)
+	case 23:
+		return DecodeActionIdNxPushMpls(_actionidnicira, decoder)
+	case 24:
+		return DecodeActionIdNxPopMpls(_actionidnicira, decoder)
+	case 25:
+		return DecodeActionIdNxSetMplsTtl(_actionidnicira, decoder)
+	case 26:
+		return DecodeActionIdNxDecMplsTtl(_actionidnicira, decoder)
+	case 27:
+		return DecodeActionIdNxStackPush(_actionidnicira, decoder)
+	case 28:
+		return DecodeActionIdNxStackPop(_actionidnicira, decoder)
+	case 29:
+		return DecodeActionIdNxSample(_actionidnicira, decoder)
+	case 30:
+		return DecodeActionIdNxSetMplsLabel(_actionidnicira, decoder)
+	case 31:
+		return DecodeActionIdNxSetMplsTc(_actionidnicira, decoder)
+	case 32:
+		return DecodeActionIdNxOutputReg2(_actionidnicira, decoder)
+	case 33:
+		return DecodeActionIdNxRegLoad2(_actionidnicira, decoder)
+	case 34:
+		return DecodeActionIdNxConjunction(_actionidnicira, decoder)
+	case 35:
+		return DecodeActionIdNxCt(_actionidnicira, decoder)
+	case 36:
+		return DecodeActionIdNxNat(_actionidnicira, decoder)
+	case 37:
+		return DecodeActionIdNxController2(_actionidnicira, decoder)
+	case 38:
+		return DecodeActionIdNxSample2(_actionidnicira, decoder)
+	case 39:
+		return DecodeActionIdNxOutputTrunc(_actionidnicira, decoder)
+	case 40:
+		return DecodeActionIdNxGroup(_actionidnicira, decoder)
+	case 41:
+		return DecodeActionIdNxSample3(_actionidnicira, decoder)
+	case 42:
+		return DecodeActionIdNxClone(_actionidnicira, decoder)
+	case 43:
+		return DecodeActionIdNxCtClear(_actionidnicira, decoder)
+	case 44:
+		return DecodeActionIdNxResubmitTableCt(_actionidnicira, decoder)
+	case 45:
+		return DecodeActionIdNxLearn2(_actionidnicira, decoder)
+	case 46:
+		return DecodeActionIdNxEncap(_actionidnicira, decoder)
+	case 47:
+		return DecodeActionIdNxDecap(_actionidnicira, decoder)
+	case 48:
+		return DecodeActionIdNxDecNshTtl(_actionidnicira, decoder)
+	case 254:
+		return DecodeActionIdNxDebugSlow(_actionidnicira, decoder)
+	case 255:
+		return DecodeActionIdNxDebugRecirc(_actionidnicira, decoder)
+	default:
+		return _actionidnicira, nil
+	}
+}
+
+func NewActionIdNicira(_subtype uint16) *ActionIdNicira {
+	obj := &ActionIdNicira{
+		ActionIdExperimenter: NewActionIdExperimenter(8992),
+	}
+	obj.Subtype = _subtype
+	return obj
+}
+
+type ActionIdNiciraDecTtl struct {
+	*ActionIdNicira
+}
+
+type IActionIdNiciraDecTtl interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNiciraDecTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNiciraDecTtl(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNiciraDecTtl, error) {
+	_actionidniciradecttl := &ActionIdNiciraDecTtl{ActionIdNicira: parent}
+	return _actionidniciradecttl, nil
+}
+
+func NewActionIdNiciraDecTtl() *ActionIdNiciraDecTtl {
+	obj := &ActionIdNiciraDecTtl{
+		ActionIdNicira: NewActionIdNicira(18),
+	}
+	return obj
+}
+
+type ActionIdNxBundle struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxBundle interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxBundle) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxBundle(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxBundle, error) {
+	_actionidnxbundle := &ActionIdNxBundle{ActionIdNicira: parent}
+	return _actionidnxbundle, nil
+}
+
+func NewActionIdNxBundle() *ActionIdNxBundle {
+	obj := &ActionIdNxBundle{
+		ActionIdNicira: NewActionIdNicira(12),
+	}
+	return obj
+}
+
+type ActionIdNxBundleLoad struct {
+	*ActionIdNicira
+	SlaveType ActionNxBundleSlaveType
+}
+
+type IActionIdNxBundleLoad interface {
+	IActionIdNicira
+	GetSlaveType() ActionNxBundleSlaveType
+}
+
+func (self *ActionIdNxBundleLoad) GetSlaveType() ActionNxBundleSlaveType {
+	return self.SlaveType
+}
+
+func (self *ActionIdNxBundleLoad) SetSlaveType(v ActionNxBundleSlaveType) {
+	self.SlaveType = v
+}
+
+func (self *ActionIdNxBundleLoad) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	encoder.PutUint32(uint32(self.SlaveType))
+
+	return nil
+}
+
+func DecodeActionIdNxBundleLoad(parent *ActionIdNicira, decoder *goloxi.Decoder) (IActionIdNxBundleLoad, error) {
+	_actionidnxbundleload := &ActionIdNxBundleLoad{ActionIdNicira: parent}
+	if decoder.Length() < 4 {
+		return nil, fmt.Errorf("ActionIdNxBundleLoad packet too short: %d < 4", decoder.Length())
+	}
+	_actionidnxbundleload.SlaveType = ActionNxBundleSlaveType(decoder.ReadUint32())
+	return _actionidnxbundleload, nil
+}
+
+func NewActionIdNxBundleLoad(_slave_type ActionNxBundleSlaveType) *ActionIdNxBundleLoad {
+	obj := &ActionIdNxBundleLoad{
+		ActionIdNicira: NewActionIdNicira(13),
+	}
+	obj.SlaveType = _slave_type
+	return obj
+}
+
+type ActionIdNxBundleLoadInPort struct {
+	*ActionIdNicira
+	SlaveType ActionNxBundleSlaveType
+	NSlaves   uint16
+}
+
+type IActionIdNxBundleLoadInPort interface {
+	IActionIdNicira
+	GetSlaveType() ActionNxBundleSlaveType
+	GetNSlaves() uint16
+}
+
+func (self *ActionIdNxBundleLoadInPort) GetSlaveType() ActionNxBundleSlaveType {
+	return self.SlaveType
+}
+
+func (self *ActionIdNxBundleLoadInPort) SetSlaveType(v ActionNxBundleSlaveType) {
+	self.SlaveType = v
+}
+
+func (self *ActionIdNxBundleLoadInPort) GetNSlaves() uint16 {
+	return self.NSlaves
+}
+
+func (self *ActionIdNxBundleLoadInPort) SetNSlaves(v uint16) {
+	self.NSlaves = v
+}
+
+func (self *ActionIdNxBundleLoadInPort) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	encoder.PutUint32(uint32(self.SlaveType))
+	encoder.PutUint16(uint16(self.NSlaves))
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxBundleLoadInPort(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxBundleLoadInPort, error) {
+	_actionidnxbundleloadinport := &ActionIdNxBundleLoadInPort{ActionIdNicira: parent}
+	if decoder.Length() < 6 {
+		return nil, fmt.Errorf("ActionIdNxBundleLoadInPort packet too short: %d < 6", decoder.Length())
+	}
+	_actionidnxbundleloadinport.SlaveType = ActionNxBundleSlaveType(decoder.ReadUint32())
+	_actionidnxbundleloadinport.NSlaves = uint16(decoder.ReadUint16())
+	return _actionidnxbundleloadinport, nil
+}
+
+func NewActionIdNxBundleLoadInPort() *ActionIdNxBundleLoadInPort {
+	obj := &ActionIdNxBundleLoadInPort{
+		ActionIdNicira: NewActionIdNicira(13),
+	}
+	return obj
+}
+
+type ActionIdNxClone struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxClone interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxClone) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxClone(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxClone, error) {
+	_actionidnxclone := &ActionIdNxClone{ActionIdNicira: parent}
+	return _actionidnxclone, nil
+}
+
+func NewActionIdNxClone() *ActionIdNxClone {
+	obj := &ActionIdNxClone{
+		ActionIdNicira: NewActionIdNicira(42),
+	}
+	return obj
+}
+
+type ActionIdNxConjunction struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxConjunction interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxConjunction) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxConjunction(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxConjunction, error) {
+	_actionidnxconjunction := &ActionIdNxConjunction{ActionIdNicira: parent}
+	return _actionidnxconjunction, nil
+}
+
+func NewActionIdNxConjunction() *ActionIdNxConjunction {
+	obj := &ActionIdNxConjunction{
+		ActionIdNicira: NewActionIdNicira(34),
+	}
+	return obj
+}
+
+type ActionIdNxController struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxController interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxController) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxController(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxController, error) {
+	_actionidnxcontroller := &ActionIdNxController{ActionIdNicira: parent}
+	return _actionidnxcontroller, nil
+}
+
+func NewActionIdNxController() *ActionIdNxController {
+	obj := &ActionIdNxController{
+		ActionIdNicira: NewActionIdNicira(20),
+	}
+	return obj
+}
+
+type ActionIdNxController2 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxController2 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxController2) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxController2(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxController2, error) {
+	_actionidnxcontroller2 := &ActionIdNxController2{ActionIdNicira: parent}
+	return _actionidnxcontroller2, nil
+}
+
+func NewActionIdNxController2() *ActionIdNxController2 {
+	obj := &ActionIdNxController2{
+		ActionIdNicira: NewActionIdNicira(37),
+	}
+	return obj
+}
+
+type ActionIdNxCt struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxCt interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxCt) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxCt(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxCt, error) {
+	_actionidnxct := &ActionIdNxCt{ActionIdNicira: parent}
+	return _actionidnxct, nil
+}
+
+func NewActionIdNxCt() *ActionIdNxCt {
+	obj := &ActionIdNxCt{
+		ActionIdNicira: NewActionIdNicira(35),
+	}
+	return obj
+}
+
+type ActionIdNxCtClear struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxCtClear interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxCtClear) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxCtClear(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxCtClear, error) {
+	_actionidnxctclear := &ActionIdNxCtClear{ActionIdNicira: parent}
+	return _actionidnxctclear, nil
+}
+
+func NewActionIdNxCtClear() *ActionIdNxCtClear {
+	obj := &ActionIdNxCtClear{
+		ActionIdNicira: NewActionIdNicira(43),
+	}
+	return obj
+}
+
+type ActionIdNxDebugRecirc struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxDebugRecirc interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxDebugRecirc) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxDebugRecirc(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxDebugRecirc, error) {
+	_actionidnxdebugrecirc := &ActionIdNxDebugRecirc{ActionIdNicira: parent}
+	return _actionidnxdebugrecirc, nil
+}
+
+func NewActionIdNxDebugRecirc() *ActionIdNxDebugRecirc {
+	obj := &ActionIdNxDebugRecirc{
+		ActionIdNicira: NewActionIdNicira(255),
+	}
+	return obj
+}
+
+type ActionIdNxDebugSlow struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxDebugSlow interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxDebugSlow) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxDebugSlow(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxDebugSlow, error) {
+	_actionidnxdebugslow := &ActionIdNxDebugSlow{ActionIdNicira: parent}
+	return _actionidnxdebugslow, nil
+}
+
+func NewActionIdNxDebugSlow() *ActionIdNxDebugSlow {
+	obj := &ActionIdNxDebugSlow{
+		ActionIdNicira: NewActionIdNicira(254),
+	}
+	return obj
+}
+
+type ActionIdNxDecMplsTtl struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxDecMplsTtl interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxDecMplsTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxDecMplsTtl(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxDecMplsTtl, error) {
+	_actionidnxdecmplsttl := &ActionIdNxDecMplsTtl{ActionIdNicira: parent}
+	return _actionidnxdecmplsttl, nil
+}
+
+func NewActionIdNxDecMplsTtl() *ActionIdNxDecMplsTtl {
+	obj := &ActionIdNxDecMplsTtl{
+		ActionIdNicira: NewActionIdNicira(26),
+	}
+	return obj
+}
+
+type ActionIdNxDecNshTtl struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxDecNshTtl interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxDecNshTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxDecNshTtl(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxDecNshTtl, error) {
+	_actionidnxdecnshttl := &ActionIdNxDecNshTtl{ActionIdNicira: parent}
+	return _actionidnxdecnshttl, nil
+}
+
+func NewActionIdNxDecNshTtl() *ActionIdNxDecNshTtl {
+	obj := &ActionIdNxDecNshTtl{
+		ActionIdNicira: NewActionIdNicira(48),
+	}
+	return obj
+}
+
+type ActionIdNxDecTtlCntIds struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxDecTtlCntIds interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxDecTtlCntIds) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxDecTtlCntIds(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxDecTtlCntIds, error) {
+	_actionidnxdecttlcntids := &ActionIdNxDecTtlCntIds{ActionIdNicira: parent}
+	return _actionidnxdecttlcntids, nil
+}
+
+func NewActionIdNxDecTtlCntIds() *ActionIdNxDecTtlCntIds {
+	obj := &ActionIdNxDecTtlCntIds{
+		ActionIdNicira: NewActionIdNicira(21),
+	}
+	return obj
+}
+
+type ActionIdNxDecap struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxDecap interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxDecap) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxDecap(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxDecap, error) {
+	_actionidnxdecap := &ActionIdNxDecap{ActionIdNicira: parent}
+	return _actionidnxdecap, nil
+}
+
+func NewActionIdNxDecap() *ActionIdNxDecap {
+	obj := &ActionIdNxDecap{
+		ActionIdNicira: NewActionIdNicira(47),
+	}
+	return obj
+}
+
+type ActionIdNxEncap struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxEncap interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxEncap) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxEncap(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxEncap, error) {
+	_actionidnxencap := &ActionIdNxEncap{ActionIdNicira: parent}
+	return _actionidnxencap, nil
+}
+
+func NewActionIdNxEncap() *ActionIdNxEncap {
+	obj := &ActionIdNxEncap{
+		ActionIdNicira: NewActionIdNicira(46),
+	}
+	return obj
+}
+
+type ActionIdNxExit struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxExit interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxExit) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxExit(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxExit, error) {
+	_actionidnxexit := &ActionIdNxExit{ActionIdNicira: parent}
+	return _actionidnxexit, nil
+}
+
+func NewActionIdNxExit() *ActionIdNxExit {
+	obj := &ActionIdNxExit{
+		ActionIdNicira: NewActionIdNicira(17),
+	}
+	return obj
+}
+
+type ActionIdNxFinTimeout struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxFinTimeout interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxFinTimeout) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxFinTimeout(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxFinTimeout, error) {
+	_actionidnxfintimeout := &ActionIdNxFinTimeout{ActionIdNicira: parent}
+	return _actionidnxfintimeout, nil
+}
+
+func NewActionIdNxFinTimeout() *ActionIdNxFinTimeout {
+	obj := &ActionIdNxFinTimeout{
+		ActionIdNicira: NewActionIdNicira(19),
+	}
+	return obj
+}
+
+type ActionIdNxGroup struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxGroup interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxGroup) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxGroup(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxGroup, error) {
+	_actionidnxgroup := &ActionIdNxGroup{ActionIdNicira: parent}
+	return _actionidnxgroup, nil
+}
+
+func NewActionIdNxGroup() *ActionIdNxGroup {
+	obj := &ActionIdNxGroup{
+		ActionIdNicira: NewActionIdNicira(40),
+	}
+	return obj
+}
+
+type ActionIdNxLearn struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxLearn interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxLearn) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxLearn(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxLearn, error) {
+	_actionidnxlearn := &ActionIdNxLearn{ActionIdNicira: parent}
+	return _actionidnxlearn, nil
+}
+
+func NewActionIdNxLearn() *ActionIdNxLearn {
+	obj := &ActionIdNxLearn{
+		ActionIdNicira: NewActionIdNicira(16),
+	}
+	return obj
+}
+
+type ActionIdNxLearn2 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxLearn2 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxLearn2) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxLearn2(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxLearn2, error) {
+	_actionidnxlearn2 := &ActionIdNxLearn2{ActionIdNicira: parent}
+	return _actionidnxlearn2, nil
+}
+
+func NewActionIdNxLearn2() *ActionIdNxLearn2 {
+	obj := &ActionIdNxLearn2{
+		ActionIdNicira: NewActionIdNicira(45),
+	}
+	return obj
+}
+
+type ActionIdNxMultipath struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxMultipath interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxMultipath) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxMultipath(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxMultipath, error) {
+	_actionidnxmultipath := &ActionIdNxMultipath{ActionIdNicira: parent}
+	return _actionidnxmultipath, nil
+}
+
+func NewActionIdNxMultipath() *ActionIdNxMultipath {
+	obj := &ActionIdNxMultipath{
+		ActionIdNicira: NewActionIdNicira(10),
+	}
+	return obj
+}
+
+type ActionIdNxNat struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxNat interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxNat) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxNat(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxNat, error) {
+	_actionidnxnat := &ActionIdNxNat{ActionIdNicira: parent}
+	return _actionidnxnat, nil
+}
+
+func NewActionIdNxNat() *ActionIdNxNat {
+	obj := &ActionIdNxNat{
+		ActionIdNicira: NewActionIdNicira(36),
+	}
+	return obj
+}
+
+type ActionIdNxNote struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxNote interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxNote) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxNote(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxNote, error) {
+	_actionidnxnote := &ActionIdNxNote{ActionIdNicira: parent}
+	return _actionidnxnote, nil
+}
+
+func NewActionIdNxNote() *ActionIdNxNote {
+	obj := &ActionIdNxNote{
+		ActionIdNicira: NewActionIdNicira(8),
+	}
+	return obj
+}
+
+type ActionIdNxOutputReg struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxOutputReg interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxOutputReg) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxOutputReg(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxOutputReg, error) {
+	_actionidnxoutputreg := &ActionIdNxOutputReg{ActionIdNicira: parent}
+	return _actionidnxoutputreg, nil
+}
+
+func NewActionIdNxOutputReg() *ActionIdNxOutputReg {
+	obj := &ActionIdNxOutputReg{
+		ActionIdNicira: NewActionIdNicira(15),
+	}
+	return obj
+}
+
+type ActionIdNxOutputReg2 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxOutputReg2 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxOutputReg2) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxOutputReg2(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxOutputReg2, error) {
+	_actionidnxoutputreg2 := &ActionIdNxOutputReg2{ActionIdNicira: parent}
+	return _actionidnxoutputreg2, nil
+}
+
+func NewActionIdNxOutputReg2() *ActionIdNxOutputReg2 {
+	obj := &ActionIdNxOutputReg2{
+		ActionIdNicira: NewActionIdNicira(32),
+	}
+	return obj
+}
+
+type ActionIdNxOutputTrunc struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxOutputTrunc interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxOutputTrunc) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxOutputTrunc(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxOutputTrunc, error) {
+	_actionidnxoutputtrunc := &ActionIdNxOutputTrunc{ActionIdNicira: parent}
+	return _actionidnxoutputtrunc, nil
+}
+
+func NewActionIdNxOutputTrunc() *ActionIdNxOutputTrunc {
+	obj := &ActionIdNxOutputTrunc{
+		ActionIdNicira: NewActionIdNicira(39),
+	}
+	return obj
+}
+
+type ActionIdNxPopMpls struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxPopMpls interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxPopMpls) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxPopMpls(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxPopMpls, error) {
+	_actionidnxpopmpls := &ActionIdNxPopMpls{ActionIdNicira: parent}
+	return _actionidnxpopmpls, nil
+}
+
+func NewActionIdNxPopMpls() *ActionIdNxPopMpls {
+	obj := &ActionIdNxPopMpls{
+		ActionIdNicira: NewActionIdNicira(24),
+	}
+	return obj
+}
+
+type ActionIdNxPopQueue struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxPopQueue interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxPopQueue) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxPopQueue(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxPopQueue, error) {
+	_actionidnxpopqueue := &ActionIdNxPopQueue{ActionIdNicira: parent}
+	return _actionidnxpopqueue, nil
+}
+
+func NewActionIdNxPopQueue() *ActionIdNxPopQueue {
+	obj := &ActionIdNxPopQueue{
+		ActionIdNicira: NewActionIdNicira(5),
+	}
+	return obj
+}
+
+type ActionIdNxPushMpls struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxPushMpls interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxPushMpls) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxPushMpls(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxPushMpls, error) {
+	_actionidnxpushmpls := &ActionIdNxPushMpls{ActionIdNicira: parent}
+	return _actionidnxpushmpls, nil
+}
+
+func NewActionIdNxPushMpls() *ActionIdNxPushMpls {
+	obj := &ActionIdNxPushMpls{
+		ActionIdNicira: NewActionIdNicira(23),
+	}
+	return obj
+}
+
+type ActionIdNxRegLoad struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxRegLoad interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxRegLoad) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxRegLoad(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxRegLoad, error) {
+	_actionidnxregload := &ActionIdNxRegLoad{ActionIdNicira: parent}
+	return _actionidnxregload, nil
+}
+
+func NewActionIdNxRegLoad() *ActionIdNxRegLoad {
+	obj := &ActionIdNxRegLoad{
+		ActionIdNicira: NewActionIdNicira(7),
+	}
+	return obj
+}
+
+type ActionIdNxRegLoad2 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxRegLoad2 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxRegLoad2) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxRegLoad2(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxRegLoad2, error) {
+	_actionidnxregload2 := &ActionIdNxRegLoad2{ActionIdNicira: parent}
+	return _actionidnxregload2, nil
+}
+
+func NewActionIdNxRegLoad2() *ActionIdNxRegLoad2 {
+	obj := &ActionIdNxRegLoad2{
+		ActionIdNicira: NewActionIdNicira(33),
+	}
+	return obj
+}
+
+type ActionIdNxRegMove struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxRegMove interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxRegMove) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxRegMove(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxRegMove, error) {
+	_actionidnxregmove := &ActionIdNxRegMove{ActionIdNicira: parent}
+	return _actionidnxregmove, nil
+}
+
+func NewActionIdNxRegMove() *ActionIdNxRegMove {
+	obj := &ActionIdNxRegMove{
+		ActionIdNicira: NewActionIdNicira(6),
+	}
+	return obj
+}
+
+type ActionIdNxResubmit struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxResubmit interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxResubmit) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxResubmit(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxResubmit, error) {
+	_actionidnxresubmit := &ActionIdNxResubmit{ActionIdNicira: parent}
+	return _actionidnxresubmit, nil
+}
+
+func NewActionIdNxResubmit() *ActionIdNxResubmit {
+	obj := &ActionIdNxResubmit{
+		ActionIdNicira: NewActionIdNicira(1),
+	}
+	return obj
+}
+
+type ActionIdNxResubmitTable struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxResubmitTable interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxResubmitTable) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxResubmitTable(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxResubmitTable, error) {
+	_actionidnxresubmittable := &ActionIdNxResubmitTable{ActionIdNicira: parent}
+	return _actionidnxresubmittable, nil
+}
+
+func NewActionIdNxResubmitTable() *ActionIdNxResubmitTable {
+	obj := &ActionIdNxResubmitTable{
+		ActionIdNicira: NewActionIdNicira(14),
+	}
+	return obj
+}
+
+type ActionIdNxResubmitTableCt struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxResubmitTableCt interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxResubmitTableCt) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxResubmitTableCt(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxResubmitTableCt, error) {
+	_actionidnxresubmittablect := &ActionIdNxResubmitTableCt{ActionIdNicira: parent}
+	return _actionidnxresubmittablect, nil
+}
+
+func NewActionIdNxResubmitTableCt() *ActionIdNxResubmitTableCt {
+	obj := &ActionIdNxResubmitTableCt{
+		ActionIdNicira: NewActionIdNicira(44),
+	}
+	return obj
+}
+
+type ActionIdNxSample struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSample interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSample) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSample(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSample, error) {
+	_actionidnxsample := &ActionIdNxSample{ActionIdNicira: parent}
+	return _actionidnxsample, nil
+}
+
+func NewActionIdNxSample() *ActionIdNxSample {
+	obj := &ActionIdNxSample{
+		ActionIdNicira: NewActionIdNicira(29),
+	}
+	return obj
+}
+
+type ActionIdNxSample2 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSample2 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSample2) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSample2(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSample2, error) {
+	_actionidnxsample2 := &ActionIdNxSample2{ActionIdNicira: parent}
+	return _actionidnxsample2, nil
+}
+
+func NewActionIdNxSample2() *ActionIdNxSample2 {
+	obj := &ActionIdNxSample2{
+		ActionIdNicira: NewActionIdNicira(38),
+	}
+	return obj
+}
+
+type ActionIdNxSample3 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSample3 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSample3) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSample3(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSample3, error) {
+	_actionidnxsample3 := &ActionIdNxSample3{ActionIdNicira: parent}
+	return _actionidnxsample3, nil
+}
+
+func NewActionIdNxSample3() *ActionIdNxSample3 {
+	obj := &ActionIdNxSample3{
+		ActionIdNicira: NewActionIdNicira(41),
+	}
+	return obj
+}
+
+type ActionIdNxSetMplsLabel struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSetMplsLabel interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSetMplsLabel) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSetMplsLabel(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSetMplsLabel, error) {
+	_actionidnxsetmplslabel := &ActionIdNxSetMplsLabel{ActionIdNicira: parent}
+	return _actionidnxsetmplslabel, nil
+}
+
+func NewActionIdNxSetMplsLabel() *ActionIdNxSetMplsLabel {
+	obj := &ActionIdNxSetMplsLabel{
+		ActionIdNicira: NewActionIdNicira(30),
+	}
+	return obj
+}
+
+type ActionIdNxSetMplsTc struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSetMplsTc interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSetMplsTc) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSetMplsTc(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSetMplsTc, error) {
+	_actionidnxsetmplstc := &ActionIdNxSetMplsTc{ActionIdNicira: parent}
+	return _actionidnxsetmplstc, nil
+}
+
+func NewActionIdNxSetMplsTc() *ActionIdNxSetMplsTc {
+	obj := &ActionIdNxSetMplsTc{
+		ActionIdNicira: NewActionIdNicira(31),
+	}
+	return obj
+}
+
+type ActionIdNxSetMplsTtl struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSetMplsTtl interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSetMplsTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSetMplsTtl(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSetMplsTtl, error) {
+	_actionidnxsetmplsttl := &ActionIdNxSetMplsTtl{ActionIdNicira: parent}
+	return _actionidnxsetmplsttl, nil
+}
+
+func NewActionIdNxSetMplsTtl() *ActionIdNxSetMplsTtl {
+	obj := &ActionIdNxSetMplsTtl{
+		ActionIdNicira: NewActionIdNicira(25),
+	}
+	return obj
+}
+
+type ActionIdNxSetQueue struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSetQueue interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSetQueue) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSetQueue(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSetQueue, error) {
+	_actionidnxsetqueue := &ActionIdNxSetQueue{ActionIdNicira: parent}
+	return _actionidnxsetqueue, nil
+}
+
+func NewActionIdNxSetQueue() *ActionIdNxSetQueue {
+	obj := &ActionIdNxSetQueue{
+		ActionIdNicira: NewActionIdNicira(4),
+	}
+	return obj
+}
+
+type ActionIdNxSetTunnel struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSetTunnel interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSetTunnel) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSetTunnel(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSetTunnel, error) {
+	_actionidnxsettunnel := &ActionIdNxSetTunnel{ActionIdNicira: parent}
+	return _actionidnxsettunnel, nil
+}
+
+func NewActionIdNxSetTunnel() *ActionIdNxSetTunnel {
+	obj := &ActionIdNxSetTunnel{
+		ActionIdNicira: NewActionIdNicira(2),
+	}
+	return obj
+}
+
+type ActionIdNxSetTunnel64 struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxSetTunnel64 interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxSetTunnel64) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxSetTunnel64(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxSetTunnel64, error) {
+	_actionidnxsettunnel64 := &ActionIdNxSetTunnel64{ActionIdNicira: parent}
+	return _actionidnxsettunnel64, nil
+}
+
+func NewActionIdNxSetTunnel64() *ActionIdNxSetTunnel64 {
+	obj := &ActionIdNxSetTunnel64{
+		ActionIdNicira: NewActionIdNicira(9),
+	}
+	return obj
+}
+
+type ActionIdNxStackPop struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxStackPop interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxStackPop) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxStackPop(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxStackPop, error) {
+	_actionidnxstackpop := &ActionIdNxStackPop{ActionIdNicira: parent}
+	return _actionidnxstackpop, nil
+}
+
+func NewActionIdNxStackPop() *ActionIdNxStackPop {
+	obj := &ActionIdNxStackPop{
+		ActionIdNicira: NewActionIdNicira(28),
+	}
+	return obj
+}
+
+type ActionIdNxStackPush struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxStackPush interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxStackPush) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxStackPush(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxStackPush, error) {
+	_actionidnxstackpush := &ActionIdNxStackPush{ActionIdNicira: parent}
+	return _actionidnxstackpush, nil
+}
+
+func NewActionIdNxStackPush() *ActionIdNxStackPush {
+	obj := &ActionIdNxStackPush{
+		ActionIdNicira: NewActionIdNicira(27),
+	}
+	return obj
+}
+
+type ActionIdNxWriteMetadata struct {
+	*ActionIdNicira
+}
+
+type IActionIdNxWriteMetadata interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdNxWriteMetadata) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdNxWriteMetadata(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdNxWriteMetadata, error) {
+	_actionidnxwritemetadata := &ActionIdNxWriteMetadata{ActionIdNicira: parent}
+	return _actionidnxwritemetadata, nil
+}
+
+func NewActionIdNxWriteMetadata() *ActionIdNxWriteMetadata {
+	obj := &ActionIdNxWriteMetadata{
+		ActionIdNicira: NewActionIdNicira(22),
+	}
+	return obj
+}
+
+type ActionIdOutput struct {
+	*ActionId
+}
+
+type IActionIdOutput interface {
+	IActionId
+}
+
+func (self *ActionIdOutput) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdOutput(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdOutput, error) {
+	_actionidoutput := &ActionIdOutput{ActionId: parent}
+	return _actionidoutput, nil
+}
+
+func NewActionIdOutput() *ActionIdOutput {
+	obj := &ActionIdOutput{
+		ActionId: NewActionId(0),
+	}
+	return obj
+}
+
+type ActionIdPopMpls struct {
+	*ActionId
+}
+
+type IActionIdPopMpls interface {
+	IActionId
+}
+
+func (self *ActionIdPopMpls) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdPopMpls(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdPopMpls, error) {
+	_actionidpopmpls := &ActionIdPopMpls{ActionId: parent}
+	return _actionidpopmpls, nil
+}
+
+func NewActionIdPopMpls() *ActionIdPopMpls {
+	obj := &ActionIdPopMpls{
+		ActionId: NewActionId(20),
+	}
+	return obj
+}
+
+type ActionIdPopPbb struct {
+	*ActionId
+}
+
+type IActionIdPopPbb interface {
+	IActionId
+}
+
+func (self *ActionIdPopPbb) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdPopPbb(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdPopPbb, error) {
+	_actionidpoppbb := &ActionIdPopPbb{ActionId: parent}
+	return _actionidpoppbb, nil
+}
+
+func NewActionIdPopPbb() *ActionIdPopPbb {
+	obj := &ActionIdPopPbb{
+		ActionId: NewActionId(27),
+	}
+	return obj
+}
+
+type ActionIdPopVlan struct {
+	*ActionId
+}
+
+type IActionIdPopVlan interface {
+	IActionId
+}
+
+func (self *ActionIdPopVlan) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdPopVlan(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdPopVlan, error) {
+	_actionidpopvlan := &ActionIdPopVlan{ActionId: parent}
+	return _actionidpopvlan, nil
+}
+
+func NewActionIdPopVlan() *ActionIdPopVlan {
+	obj := &ActionIdPopVlan{
+		ActionId: NewActionId(18),
+	}
+	return obj
+}
+
+type ActionIdPushMpls struct {
+	*ActionId
+}
+
+type IActionIdPushMpls interface {
+	IActionId
+}
+
+func (self *ActionIdPushMpls) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdPushMpls(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdPushMpls, error) {
+	_actionidpushmpls := &ActionIdPushMpls{ActionId: parent}
+	return _actionidpushmpls, nil
+}
+
+func NewActionIdPushMpls() *ActionIdPushMpls {
+	obj := &ActionIdPushMpls{
+		ActionId: NewActionId(19),
+	}
+	return obj
+}
+
+type ActionIdPushPbb struct {
+	*ActionId
+}
+
+type IActionIdPushPbb interface {
+	IActionId
+}
+
+func (self *ActionIdPushPbb) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdPushPbb(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdPushPbb, error) {
+	_actionidpushpbb := &ActionIdPushPbb{ActionId: parent}
+	return _actionidpushpbb, nil
+}
+
+func NewActionIdPushPbb() *ActionIdPushPbb {
+	obj := &ActionIdPushPbb{
+		ActionId: NewActionId(26),
+	}
+	return obj
+}
+
+type ActionIdPushVlan struct {
+	*ActionId
+}
+
+type IActionIdPushVlan interface {
+	IActionId
+}
+
+func (self *ActionIdPushVlan) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdPushVlan(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdPushVlan, error) {
+	_actionidpushvlan := &ActionIdPushVlan{ActionId: parent}
+	return _actionidpushvlan, nil
+}
+
+func NewActionIdPushVlan() *ActionIdPushVlan {
+	obj := &ActionIdPushVlan{
+		ActionId: NewActionId(17),
+	}
+	return obj
+}
+
+type ActionIdResubmit struct {
+	*ActionIdNicira
+}
+
+type IActionIdResubmit interface {
+	IActionIdNicira
+}
+
+func (self *ActionIdResubmit) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionIdNicira.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdResubmit(parent *ActionIdNicira, decoder *goloxi.Decoder) (*ActionIdResubmit, error) {
+	_actionidresubmit := &ActionIdResubmit{ActionIdNicira: parent}
+	return _actionidresubmit, nil
+}
+
+func NewActionIdResubmit() *ActionIdResubmit {
+	obj := &ActionIdResubmit{
+		ActionIdNicira: NewActionIdNicira(14),
+	}
+	return obj
+}
+
+type ActionIdSetField struct {
+	*ActionId
+}
+
+type IActionIdSetField interface {
+	IActionId
+}
+
+func (self *ActionIdSetField) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdSetField(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdSetField, error) {
+	_actionidsetfield := &ActionIdSetField{ActionId: parent}
+	return _actionidsetfield, nil
+}
+
+func NewActionIdSetField() *ActionIdSetField {
+	obj := &ActionIdSetField{
+		ActionId: NewActionId(25),
+	}
+	return obj
+}
+
+type ActionIdSetMplsTtl struct {
+	*ActionId
+}
+
+type IActionIdSetMplsTtl interface {
+	IActionId
+}
+
+func (self *ActionIdSetMplsTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdSetMplsTtl(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdSetMplsTtl, error) {
+	_actionidsetmplsttl := &ActionIdSetMplsTtl{ActionId: parent}
+	return _actionidsetmplsttl, nil
+}
+
+func NewActionIdSetMplsTtl() *ActionIdSetMplsTtl {
+	obj := &ActionIdSetMplsTtl{
+		ActionId: NewActionId(15),
+	}
+	return obj
+}
+
+type ActionIdSetNwTtl struct {
+	*ActionId
+}
+
+type IActionIdSetNwTtl interface {
+	IActionId
+}
+
+func (self *ActionIdSetNwTtl) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdSetNwTtl(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdSetNwTtl, error) {
+	_actionidsetnwttl := &ActionIdSetNwTtl{ActionId: parent}
+	return _actionidsetnwttl, nil
+}
+
+func NewActionIdSetNwTtl() *ActionIdSetNwTtl {
+	obj := &ActionIdSetNwTtl{
+		ActionId: NewActionId(23),
+	}
+	return obj
+}
+
+type ActionIdSetQueue struct {
+	*ActionId
+}
+
+type IActionIdSetQueue interface {
+	IActionId
+}
+
+func (self *ActionIdSetQueue) Serialize(encoder *goloxi.Encoder) error {
+	if err := self.ActionId.Serialize(encoder); err != nil {
+		return err
+	}
+
+	binary.BigEndian.PutUint16(encoder.Bytes()[2:4], uint16(len(encoder.Bytes())))
+
+	return nil
+}
+
+func DecodeActionIdSetQueue(parent *ActionId, decoder *goloxi.Decoder) (*ActionIdSetQueue, error) {
+	_actionidsetqueue := &ActionIdSetQueue{ActionId: parent}
+	return _actionidsetqueue, nil
+}
+
+func NewActionIdSetQueue() *ActionIdSetQueue {
+	obj := &ActionIdSetQueue{
+		ActionId: NewActionId(21),
+	}
+	return obj
+}