module openflow-instruction { namespace "urn:opendaylight:openflow:common:instruction"; prefix "ofinstruction"; import openflow-types { prefix oft; } revision "2013-07-31" { // description "Initial model"; } identity goto_table { //description " Setup the next table in the lookup pipeline"; base oft:instruction; } identity write_metadata { //description " Setup the metadata field for use later in pipeline"; base oft:instruction; } identity write_actions { description " Write the action(s) onto the datapath action set"; base oft:instruction; } identity apply_actions { description " Applies the action(s) immediately"; base oft:instruction; } identity clear_actions { description " Clears all actions from the datapath action set"; base oft:instruction; } identity meter { description " Apply meter (rate limiter)"; base oft:instruction; } identity experimenter { description "Experimenter instruction"; base oft:instruction; } // Structures grouping goto-table { description " Setup the next table in the lookup pipeline"; leaf table { type oft:table-id; // } } grouping write-metadata { description " Setup the metadata field for use later in pipeline"; leaf metadata { type oft:metadata; } leaf mask { type oft:metadata; } } grouping meter { description " Apply meter (rate limiter)"; leaf meter-id { type oft:meter-id; } } container instruction-container { uses instructions; } grouping instructions { container instruction { leaf type { type identityref { base oft:instruction; } } } } }