from ryu.services.protocols.bgp.operator.views.base import \ create_dict_view_class from ryu.services.protocols.bgp.operator.views.base import OperatorDetailView from ryu.services.protocols.bgp.operator.views import fields class ConfDetailView(OperatorDetailView): settings = fields.DataField('_settings') def encode(self): return self.get_field('settings') ConfDictView = create_dict_view_class(ConfDetailView, 'ConfDictView')
return OperatorDetailView(obj, filter_func) def encode(self): return self._obj.formatted_nlri_str class RouteFamilyView(OperatorDetailView): afi = fields.DataField('afi') safi = fields.DataField('safi') ################################################################## # Declarations of list and dict views based on detail views above ################################################################## PeerListView = create_list_view_class(PeerDetailView, 'PeerListView') PeerDictView = create_dict_view_class(PeerDetailView, 'PeerDictView') PeerListSummaryView = create_list_view_class(PeerDetailSummaryView, 'PeerListSummaryView') PeerDictSummaryView = create_dict_view_class(PeerDetailSummaryView, 'PeerDictSummaryView') TableDictView = create_dict_view_class(TableDetailView, 'TableDictView') DestinationListView = create_list_view_class(DestinationDetailView, 'DestinationListView') DestinationDictView = create_dict_view_class(DestinationDetailView, 'DestinationDictView')
else: return OperatorDetailView(obj, filter_func) def encode(self): return self._obj.formatted_nlri_str class RouteFamilyView(OperatorDetailView): afi = fields.DataField('afi') safi = fields.DataField('safi') ################################################################## # Declarations of list and dict views based on detail views above ################################################################## PeerListView = create_list_view_class(PeerDetailView, 'PeerListView') PeerDictView = create_dict_view_class(PeerDetailView, 'PeerDictView') PeerListSummaryView = create_list_view_class( PeerDetailSummaryView, 'PeerListSummaryView' ) PeerDictSummaryView = create_dict_view_class( PeerDetailSummaryView, 'PeerDictSummaryView' ) TableDictView = create_dict_view_class(TableDetailView, 'TableDictView') DestinationListView = create_list_view_class(
class ImportmapManagerDetailView(OperatorDetailView): importmaps = fields.RelatedDictViewField( '_import_maps_by_name', 'bgpspeaker.operator.views.other.ImportmapDictView' ) class ImportmapDetailView(OperatorDetailView): nlri = fields.OptionalDataField('_nlri') rt = fields.OptionalDataField('_rt') def encode(self): ret = {} nlri = self.get_field('nlri') if nlri is not None: ret.update({'nlri': nlri}) rt = self.get_field('rt') if rt is not None: ret.update({'rt': rt}) return ret ImportmapDictView = create_dict_view_class( ImportmapDetailView, 'ImportmapDictView' )
create_dict_view_class from ryu.services.protocols.bgp.operator.views.base import OperatorDetailView from ryu.services.protocols.bgp.operator.views import fields class ImportmapManagerDetailView(OperatorDetailView): importmaps = fields.RelatedDictViewField( '_import_maps_by_name', 'ryu.services.protocols.bgp.operator.views.other.ImportmapDictView') class ImportmapDetailView(OperatorDetailView): nlri = fields.OptionalDataField('_nlri') rt = fields.OptionalDataField('_rt') def encode(self): ret = {} nlri = self.get_field('nlri') if nlri is not None: ret.update({'nlri': nlri}) rt = self.get_field('rt') if rt is not None: ret.update({'rt': rt}) return ret ImportmapDictView = create_dict_view_class(ImportmapDetailView, 'ImportmapDictView')