"""Execute main program.""" parser = ArgumentParser() parser.add_argument("-v", "--verbose", help="print debugging messages", action="store_true") args = parser.parse_args() # log debug messages if verbose argument specified if args.verbose: logger = logging.getLogger("ydk") logger.setLevel(logging.INFO) handler = logging.StreamHandler() formatter = logging.Formatter(("%(asctime)s - %(name)s - " "%(levelname)s - %(message)s")) handler.setFormatter(formatter) logger.addHandler(handler) # create codec provider provider = CodecServiceProvider(type="xml") # create codec service codec = CodecService() sr = xr_segment_routing_ms_cfg.Sr() # create object config_sr(sr) # add object configuration # encode and print object print(codec.encode(provider, sr)) exit() # End of script
pass_all_policy_defn = RoutingPolicy.PolicyDefinitions.PolicyDefinition() pass_all_policy_defn.name = 'PASS-ALL' routing_policy.policy_definitions.policy_definition.append( pass_all_policy_defn) pass_all_policy_defn._parent = routing_policy.policy_definitions comm_set = RoutingPolicy.DefinedSets.BgpDefinedSets.CommunitySets.CommunitySet( ) comm_set.community_set_name = 'testing' comm_set.community_member.append("oooo") comm_set.community_member.append("a") routing_policy.defined_sets.bgp_defined_sets.community_sets.community_set.append( comm_set) routing_payload = codec_service.encode(provider, routing_policy) print routing_payload routing_entity = codec_service.decode(provider, routing_payload) print 'Encoded payload:\n', routing_payload, \ '\nRe-encode the decoded payload:\n', codec_service.encode(provider, routing_entity) assert routing_payload == codec_service.encode(provider, routing_entity) if __name__ == "__main__": # init_logging() provider = CodecServiceProvider(type='xml') codec_service = CodecService() bgp_run(codec_service, provider) run_routing(codec_service, provider) exit()
def setUpClass(self): self.maxDiff = None self.codec = CodecService() self.provider = CodecServiceProvider(type='xml') self._xml_enum_payload_1 = '''<built-in-t xmlns="http://cisco.com/ns/yang/ydktest-sanity"> <enum-value>local</enum-value> </built-in-t> ''' self._json_enum_payload_1 = """{ "ydktest-sanity:built-in-t": { "enum-value": "local" } } """ self._xml_enum_payload_2 = '''<runner xmlns="http://cisco.com/ns/yang/ydktest-sanity"> <ytypes> <built-in-t> <enum-value>local</enum-value> </built-in-t> </ytypes> </runner> ''' self._xml_runner_payload = '''<runner xmlns="http://cisco.com/ns/yang/ydktest-sanity"> <two-list> <ldata> <number>21</number> <name>runner:twolist:ldata[21]:name</name> <subl1> <number>211</number> <name>runner:twolist:ldata[21]:subl1[211]:name</name> </subl1> <subl1> <number>212</number> <name>runner:twolist:ldata[21]:subl1[212]:name</name> </subl1> </ldata> <ldata> <number>22</number> <name>runner:twolist:ldata[22]:name</name> <subl1> <number>221</number> <name>runner:twolist:ldata[22]:subl1[221]:name</name> </subl1> <subl1> <number>222</number> <name>runner:twolist:ldata[22]:subl1[222]:name</name> </subl1> </ldata> </two-list> </runner> ''' self._json_runner_payload = """{ "ydktest-sanity:runner": { "two-list": { "ldata": [ { "number": 21, "name": "runner:twolist:ldata[21]:name", "subl1": [ { "number": 211, "name": "runner:twolist:ldata[21]:subl1[211]:name" }, { "number": 212, "name": "runner:twolist:ldata[21]:subl1[212]:name" } ] }, { "number": 22, "name": "runner:twolist:ldata[22]:name", "subl1": [ { "number": 221, "name": "runner:twolist:ldata[22]:subl1[221]:name" }, { "number": 222, "name": "runner:twolist:ldata[22]:subl1[222]:name" } ] } ] } } } """ self._xml_oc_pattern_payload = '''<oc-A xmlns="http://cisco.com/ns/yang/oc-pattern"> <a>Hello</a> </oc-A> ''' self._json_oc_pattern_payload = """{
def setUpClass(self): self.csp = CodecServiceProvider(type=EncodingFormat.XML) self.es = ExecutorService() self.cs = CodecService()
logger.setLevel(logging.INFO) handler = logging.StreamHandler() formatter = logging.Formatter(("%(asctime)s - %(name)s - " "%(levelname)s - %(message)s")) handler.setFormatter(formatter) logger.addHandler(handler) # create NETCONF provider provider = NetconfServiceProvider(address=device.hostname, port=device.port, username=device.username, password=device.password, protocol=device.scheme) # Instantiate codec providers with json and xml options json_provider = CodecServiceProvider(type='json') xml_provider = CodecServiceProvider(type='xml') # create CRUD service crud = CRUDService() # create codec service codec = CodecService() # First create the top-level Isis() object isis = Cisco_IOS_XR_clns_isis_cfg.Isis() # Create the list instance ins = Cisco_IOS_XR_clns_isis_cfg.Isis.Instances.Instance() ins.instance_name = 'default'
def to_string(self): from ydk.providers import CodecServiceProvider from ydk.services import CodecService provider = CodecServiceProvider(type="xml") codec = CodecService() return codec.encode(provider, self.binding)