From 16fc845c5753eacbd825b3217f1bbd2343430a5c Mon Sep 17 00:00:00 2001 From: jeremystretch Date: Wed, 16 Mar 2022 14:05:20 -0400 Subject: [PATCH] Add GraphQL --- netbox_access_lists/graphql.py | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 netbox_access_lists/graphql.py diff --git a/netbox_access_lists/graphql.py b/netbox_access_lists/graphql.py new file mode 100644 index 0000000..77d3d4f --- /dev/null +++ b/netbox_access_lists/graphql.py @@ -0,0 +1,39 @@ +from graphene import ObjectType +from netbox.graphql.types import NetBoxObjectType +from netbox.graphql.fields import ObjectField, ObjectListField +from . import filtersets, models + + +# +# Types +# + +class AccessListType(NetBoxObjectType): + + class Meta: + model = models.AccessList + fields = '__all__' + + +class AccessListRuleType(NetBoxObjectType): + + class Meta: + model = models.AccessListRule + fields = '__all__' + filterset_class = filtersets.AccessListRuleFilterSet + + +# +# Queries +# + +class Query(ObjectType): + access_list = ObjectField(AccessListType) + access_list_list = ObjectListField(AccessListType) + + access_list_rule = ObjectField(AccessListRuleType) + access_list_rule_list = ObjectListField(AccessListRuleType) + + +schema = Query +