1# Copyright (c) 2017, The MITRE Corporation. All rights reserved.
2# See LICENSE.txt for complete terms.
3
4from mixbox import fields
5
6import cybox.bindings.as_object as as_binding
7from cybox.common import NonNegativeInteger, ObjectProperties, String
8
9
10class AutonomousSystem(ObjectProperties):
11    _binding = as_binding
12    _binding_class = as_binding.ASObjectType
13    _namespace = "http://cybox.mitre.org/objects#ASObject-1"
14    _XSI_NS = "ASObj"
15    _XSI_TYPE = "ASObjectType"
16
17    number = fields.TypedField("Number", NonNegativeInteger)
18    name = fields.TypedField("Name", String)
19    handle = fields.TypedField("Handle", String)
20    regional_internet_registry = fields.TypedField("Regional_Internet_Registry", String)
21
22
23# Add alias for the "proper", but completely unhelpful name, "AS"
24AS = AutonomousSystem
25