|
2 | 2 |
|
3 | 3 | from netbox.graphql.fields import ObjectField, ObjectListField
|
4 | 4 | from .types import *
|
| 5 | +from dcim import models |
5 | 6 | from .types import VirtualDeviceContextType
|
| 7 | +from utilities.graphql_optimizer import gql_query_optimizer |
6 | 8 |
|
7 | 9 |
|
8 | 10 | class DCIMQuery(graphene.ObjectType):
|
9 | 11 | cable = ObjectField(CableType)
|
10 | 12 | cable_list = ObjectListField(CableType)
|
11 | 13 |
|
| 14 | + def resolve_cable_list(root, info, **kwargs): |
| 15 | + return gql_query_optimizer(models.Cable.objects.all(), info) |
| 16 | + |
12 | 17 | console_port = ObjectField(ConsolePortType)
|
13 | 18 | console_port_list = ObjectListField(ConsolePortType)
|
14 | 19 |
|
| 20 | + def resolve_console_port_list(root, info, **kwargs): |
| 21 | + return gql_query_optimizer(models.ConsolePort.objects.all(), info) |
| 22 | + |
15 | 23 | console_port_template = ObjectField(ConsolePortTemplateType)
|
16 | 24 | console_port_template_list = ObjectListField(ConsolePortTemplateType)
|
17 | 25 |
|
| 26 | + def resolve_console_port_template_list(root, info, **kwargs): |
| 27 | + return gql_query_optimizer(models.ConsolePortTemplate.objects.all(), info) |
| 28 | + |
18 | 29 | console_server_port = ObjectField(ConsoleServerPortType)
|
19 | 30 | console_server_port_list = ObjectListField(ConsoleServerPortType)
|
20 | 31 |
|
| 32 | + def resolve_console_server_port_list(root, info, **kwargs): |
| 33 | + return gql_query_optimizer(models.ConsoleServerPort.objects.all(), info) |
| 34 | + |
21 | 35 | console_server_port_template = ObjectField(ConsoleServerPortTemplateType)
|
22 | 36 | console_server_port_template_list = ObjectListField(ConsoleServerPortTemplateType)
|
23 | 37 |
|
| 38 | + def resolve_console_server_port_template_list(root, info, **kwargs): |
| 39 | + return gql_query_optimizer(models.ConsoleServerPortTemplate.objects.all(), info) |
| 40 | + |
24 | 41 | device = ObjectField(DeviceType)
|
25 | 42 | device_list = ObjectListField(DeviceType)
|
26 | 43 |
|
| 44 | + def resolve_device_list(root, info, **kwargs): |
| 45 | + return gql_query_optimizer(models.Device.objects.all(), info) |
| 46 | + |
27 | 47 | device_bay = ObjectField(DeviceBayType)
|
28 | 48 | device_bay_list = ObjectListField(DeviceBayType)
|
29 | 49 |
|
| 50 | + def resolve_device_bay_list(root, info, **kwargs): |
| 51 | + return gql_query_optimizer(models.DeviceBay.objects.all(), info) |
| 52 | + |
30 | 53 | device_bay_template = ObjectField(DeviceBayTemplateType)
|
31 | 54 | device_bay_template_list = ObjectListField(DeviceBayTemplateType)
|
32 | 55 |
|
| 56 | + def resolve_device_bay_template_list(root, info, **kwargs): |
| 57 | + return gql_query_optimizer(models.DeviceBayTemplate.objects.all(), info) |
| 58 | + |
33 | 59 | device_role = ObjectField(DeviceRoleType)
|
34 | 60 | device_role_list = ObjectListField(DeviceRoleType)
|
35 | 61 |
|
| 62 | + def resolve_device_role_list(root, info, **kwargs): |
| 63 | + return gql_query_optimizer(models.DeviceRole.objects.all(), info) |
| 64 | + |
36 | 65 | device_type = ObjectField(DeviceTypeType)
|
37 | 66 | device_type_list = ObjectListField(DeviceTypeType)
|
38 | 67 |
|
| 68 | + def resolve_device_type_list(root, info, **kwargs): |
| 69 | + return gql_query_optimizer(models.DeviceType.objects.all(), info) |
| 70 | + |
39 | 71 | front_port = ObjectField(FrontPortType)
|
40 | 72 | front_port_list = ObjectListField(FrontPortType)
|
41 | 73 |
|
| 74 | + def resolve_front_port_list(root, info, **kwargs): |
| 75 | + return gql_query_optimizer(models.FrontPort.objects.all(), info) |
| 76 | + |
42 | 77 | front_port_template = ObjectField(FrontPortTemplateType)
|
43 | 78 | front_port_template_list = ObjectListField(FrontPortTemplateType)
|
44 | 79 |
|
| 80 | + def resolve_front_port_template_list(root, info, **kwargs): |
| 81 | + return gql_query_optimizer(models.FrontPortTemplate.objects.all(), info) |
| 82 | + |
45 | 83 | interface = ObjectField(InterfaceType)
|
46 | 84 | interface_list = ObjectListField(InterfaceType)
|
47 | 85 |
|
| 86 | + def resolve_interface_list(root, info, **kwargs): |
| 87 | + return gql_query_optimizer(models.Interface.objects.all(), info) |
| 88 | + |
48 | 89 | interface_template = ObjectField(InterfaceTemplateType)
|
49 | 90 | interface_template_list = ObjectListField(InterfaceTemplateType)
|
50 | 91 |
|
| 92 | + def resolve_interface_template_list(root, info, **kwargs): |
| 93 | + return gql_query_optimizer(models.InterfaceTemplate.objects.all(), info) |
| 94 | + |
51 | 95 | inventory_item = ObjectField(InventoryItemType)
|
52 | 96 | inventory_item_list = ObjectListField(InventoryItemType)
|
53 | 97 |
|
| 98 | + def resolve_inventory_item_list(root, info, **kwargs): |
| 99 | + return gql_query_optimizer(models.InventoryItem.objects.all(), info) |
| 100 | + |
54 | 101 | inventory_item_role = ObjectField(InventoryItemRoleType)
|
55 | 102 | inventory_item_role_list = ObjectListField(InventoryItemRoleType)
|
56 | 103 |
|
| 104 | + def resolve_inventory_item_role_list(root, info, **kwargs): |
| 105 | + return gql_query_optimizer(models.InventoryItemRole.objects.all(), info) |
| 106 | + |
57 | 107 | inventory_item_template = ObjectField(InventoryItemTemplateType)
|
58 | 108 | inventory_item_template_list = ObjectListField(InventoryItemTemplateType)
|
59 | 109 |
|
| 110 | + def resolve_inventory_item_template_list(root, info, **kwargs): |
| 111 | + return gql_query_optimizer(models.InventoryItemTemplate.objects.all(), info) |
| 112 | + |
60 | 113 | location = ObjectField(LocationType)
|
61 | 114 | location_list = ObjectListField(LocationType)
|
62 | 115 |
|
| 116 | + def resolve_location_list(root, info, **kwargs): |
| 117 | + return gql_query_optimizer(models.Location.objects.all(), info) |
| 118 | + |
63 | 119 | manufacturer = ObjectField(ManufacturerType)
|
64 | 120 | manufacturer_list = ObjectListField(ManufacturerType)
|
65 | 121 |
|
| 122 | + def resolve_manufacturer_list(root, info, **kwargs): |
| 123 | + return gql_query_optimizer(models.Manufacturer.objects.all(), info) |
| 124 | + |
66 | 125 | module = ObjectField(ModuleType)
|
67 | 126 | module_list = ObjectListField(ModuleType)
|
68 | 127 |
|
| 128 | + def resolve_module_list(root, info, **kwargs): |
| 129 | + return gql_query_optimizer(models.Module.objects.all(), info) |
| 130 | + |
69 | 131 | module_bay = ObjectField(ModuleBayType)
|
70 | 132 | module_bay_list = ObjectListField(ModuleBayType)
|
71 | 133 |
|
| 134 | + def resolve_module_bay_list(root, info, **kwargs): |
| 135 | + return gql_query_optimizer(models.ModuleBay.objects.all(), info) |
| 136 | + |
72 | 137 | module_bay_template = ObjectField(ModuleBayTemplateType)
|
73 | 138 | module_bay_template_list = ObjectListField(ModuleBayTemplateType)
|
74 | 139 |
|
| 140 | + def resolve_module_bay_template_list(root, info, **kwargs): |
| 141 | + return gql_query_optimizer(models.ModuleBayTemplate.objects.all(), info) |
| 142 | + |
75 | 143 | module_type = ObjectField(ModuleTypeType)
|
76 | 144 | module_type_list = ObjectListField(ModuleTypeType)
|
77 | 145 |
|
| 146 | + def resolve_module_type_list(root, info, **kwargs): |
| 147 | + return gql_query_optimizer(models.ModuleType.objects.all(), info) |
| 148 | + |
78 | 149 | platform = ObjectField(PlatformType)
|
79 | 150 | platform_list = ObjectListField(PlatformType)
|
80 | 151 |
|
| 152 | + def resolve_platform_list(root, info, **kwargs): |
| 153 | + return gql_query_optimizer(models.Platform.objects.all(), info) |
| 154 | + |
81 | 155 | power_feed = ObjectField(PowerFeedType)
|
82 | 156 | power_feed_list = ObjectListField(PowerFeedType)
|
83 | 157 |
|
| 158 | + def resolve_power_feed_list(root, info, **kwargs): |
| 159 | + return gql_query_optimizer(models.PowerFeed.objects.all(), info) |
| 160 | + |
84 | 161 | power_outlet = ObjectField(PowerOutletType)
|
85 | 162 | power_outlet_list = ObjectListField(PowerOutletType)
|
86 | 163 |
|
| 164 | + def resolve_power_outlet_list(root, info, **kwargs): |
| 165 | + return gql_query_optimizer(models.PowerOutlet.objects.all(), info) |
| 166 | + |
87 | 167 | power_outlet_template = ObjectField(PowerOutletTemplateType)
|
88 | 168 | power_outlet_template_list = ObjectListField(PowerOutletTemplateType)
|
89 | 169 |
|
| 170 | + def resolve_power_outlet_template_list(root, info, **kwargs): |
| 171 | + return gql_query_optimizer(models.PowerOutletTemplate.objects.all(), info) |
| 172 | + |
90 | 173 | power_panel = ObjectField(PowerPanelType)
|
91 | 174 | power_panel_list = ObjectListField(PowerPanelType)
|
92 | 175 |
|
| 176 | + def resolve_power_panel_list(root, info, **kwargs): |
| 177 | + return gql_query_optimizer(models.PowerPanel.objects.all(), info) |
| 178 | + |
93 | 179 | power_port = ObjectField(PowerPortType)
|
94 | 180 | power_port_list = ObjectListField(PowerPortType)
|
95 | 181 |
|
| 182 | + def resolve_power_port_list(root, info, **kwargs): |
| 183 | + return gql_query_optimizer(models.PowerPort.objects.all(), info) |
| 184 | + |
96 | 185 | power_port_template = ObjectField(PowerPortTemplateType)
|
97 | 186 | power_port_template_list = ObjectListField(PowerPortTemplateType)
|
98 | 187 |
|
| 188 | + def resolve_power_port_template_list(root, info, **kwargs): |
| 189 | + return gql_query_optimizer(models.PowerPortTemplate.objects.all(), info) |
| 190 | + |
99 | 191 | rack = ObjectField(RackType)
|
100 | 192 | rack_list = ObjectListField(RackType)
|
101 | 193 |
|
| 194 | + def resolve_rack_list(root, info, **kwargs): |
| 195 | + return gql_query_optimizer(models.Rack.objects.all(), info) |
| 196 | + |
102 | 197 | rack_reservation = ObjectField(RackReservationType)
|
103 | 198 | rack_reservation_list = ObjectListField(RackReservationType)
|
104 | 199 |
|
| 200 | + def resolve_rack_reservation_list(root, info, **kwargs): |
| 201 | + return gql_query_optimizer(models.RackReservation.objects.all(), info) |
| 202 | + |
105 | 203 | rack_role = ObjectField(RackRoleType)
|
106 | 204 | rack_role_list = ObjectListField(RackRoleType)
|
107 | 205 |
|
| 206 | + def resolve_rack_role_list(root, info, **kwargs): |
| 207 | + return gql_query_optimizer(models.RackRole.objects.all(), info) |
| 208 | + |
108 | 209 | rear_port = ObjectField(RearPortType)
|
109 | 210 | rear_port_list = ObjectListField(RearPortType)
|
110 | 211 |
|
| 212 | + def resolve_rear_port_list(root, info, **kwargs): |
| 213 | + return gql_query_optimizer(models.RearPort.objects.all(), info) |
| 214 | + |
111 | 215 | rear_port_template = ObjectField(RearPortTemplateType)
|
112 | 216 | rear_port_template_list = ObjectListField(RearPortTemplateType)
|
113 | 217 |
|
| 218 | + def resolve_rear_port_template_list(root, info, **kwargs): |
| 219 | + return gql_query_optimizer(models.RearPortTemplate.objects.all(), info) |
| 220 | + |
114 | 221 | region = ObjectField(RegionType)
|
115 | 222 | region_list = ObjectListField(RegionType)
|
116 | 223 |
|
| 224 | + def resolve_region_list(root, info, **kwargs): |
| 225 | + return gql_query_optimizer(models.Region.objects.all(), info) |
| 226 | + |
117 | 227 | site = ObjectField(SiteType)
|
118 | 228 | site_list = ObjectListField(SiteType)
|
119 | 229 |
|
| 230 | + def resolve_site_list(root, info, **kwargs): |
| 231 | + return gql_query_optimizer(models.Site.objects.all(), info) |
| 232 | + |
120 | 233 | site_group = ObjectField(SiteGroupType)
|
121 | 234 | site_group_list = ObjectListField(SiteGroupType)
|
122 | 235 |
|
| 236 | + def resolve_site_group_list(root, info, **kwargs): |
| 237 | + return gql_query_optimizer(models.SiteGroup.objects.all(), info) |
| 238 | + |
123 | 239 | virtual_chassis = ObjectField(VirtualChassisType)
|
124 | 240 | virtual_chassis_list = ObjectListField(VirtualChassisType)
|
125 | 241 |
|
| 242 | + def resolve_virtual_chassis_list(root, info, **kwargs): |
| 243 | + return gql_query_optimizer(models.VirtualChassis.objects.all(), info) |
| 244 | + |
126 | 245 | virtual_device_context = ObjectField(VirtualDeviceContextType)
|
127 | 246 | virtual_device_context_list = ObjectListField(VirtualDeviceContextType)
|
| 247 | + |
| 248 | + def resolve_virtual_device_context_list(root, info, **kwargs): |
| 249 | + return gql_query_optimizer(models.VirtualDeviceContext.objects.all(), info) |
0 commit comments