option name = "att-workflow-driver";
option app_label = "att-workflow-driver";

message AttWorkflowDriverService (Service){
    option verbose_name = "AttWorkflowDriver Service";
    option kind = "control";
    option description = "Service that manages the AT&T Subscriber workflow";
}

message AttWorkflowDriverServiceInstance (ServiceInstance){
    option owner_class_name = "AttWorkflowDriverService";
    option verbose_name = "AttWorkflowDriver Service Instance";
    option description = "Workflow settings for a particular ONU Device";

    required string serial_number = 2 [
        help_text = "Serial number of ONU",
        max_length = 254,
        tosca_key=True,
        unique = True];
    required string authentication_state = 3 [
        help_text = "Subscriber authentication state",
        choices = "(('AWAITING', 'Awaiting'), ('STARTED', 'Started'), ('REQUESTED', 'Requested'), ('APPROVED', 'Approved'), ('DENIED', 'Denied'), )",
        default = "AWAITING",
        feedback_state = True,
        max_length = 50];
    required string of_dpid = 4 [
        help_text = "OLT Openflow ID",
        max_length = 254];
    required int32 uni_port_id = 5 [
        help_text = "ONU UNI port ID"];
    required string onu_state = 6 [
        help_text = "ONU administrative state",
        choices = "(('AWAITING', 'Awaiting'), ('ENABLED', 'Enabled'), ('DISABLED', 'Disabled'))",
        default = "AWAITING",
        feedback_state = True,
        max_length = 254];
    optional string status_message = 7 [
        help_text = "Status text of current state machine state",
        default = "",
        max_length = 254];
    required string dhcp_state = 8 [
        max_length = 254,
        default = "AWAITING",
        choices = "(('AWAITING', 'Awaiting'), ('DHCPDISCOVER', 'DHCPDISCOVER'), ('DHCPACK', 'DHCPACK'), ('DHCPREQUEST', 'DHCPREQUEST'))",
        feedback_state = True];
    optional string ip_address = 9 [
        help_text = "Subcriber IP address, learned from DHCP",
        feedback_state = True,
        max_length = 20];
    optional string mac_address = 10 [
        help_text = "Subscriber MAC address, leanred from DHCP",
        feedback_state = True,
        max_length = 20];
}

message AttWorkflowDriverWhiteListEntry (XOSBase) {
    option verbose_name = "ONU Whitelist";
    option plural = "attworkflowdriverwhitelistentries";
    option description = "White list entry that permits an ONU with a particular serial number on a particular OLT and PON";

    required manytoone owner->AttWorkflowDriverService:whitelist_entries = 1:1001 [
        help_text = "AttWorkflowDriverService that owns this white list entry",
        db_index = True,
        tosca_key = True];
    required string serial_number = 2 [
        help_text = "ONU Serial Number",
        max_length = 254,
        tosca_key = True,
        unique_with = "owner"];
    required int32 pon_port_id = 3 [
        help_text = "PON Port on which this ONU is expected to show up"];
    required string device_id = 4 [
        help_text = "OLT Device (logical device id) on which this ONU is expected to show up",
        max_length = 54];
}
