option app_label = "progran";
option name = "progran";
option legacy = "True";

message ProgranService (Service){
    option verbose_name = "Progran Service";
    required string onos_address = 1 [help_text = "Address of the progran ONOS", default = "onos-progran",  max_length = 254, null = False, db_index = False, blank = False];
    required string onos_port = 2 [help_text = "Port of the progran ONOS", default = "8183", max_length = 254, null = False, db_index = False, blank = False];
    required string onos_username = 3 [help_text = "Username of the progran ONOS", default = "karaf", max_length = 254, null = False, db_index = False, blank = False];
    required string onos_password = 4 [help_text = "Password of the progran ONOS", default = "karaf", max_length = 254, null = False, db_index = False, blank = False];
}

message ENodeB (XOSBase){
    option verbose_name = "eNodeB";
    required string description = 1 [db_index = False, max_length = 256, null = False, blank = False];
    required string enbId = 2 [help_text = "ID of this enodeb", db_index = False, max_length = 256, null = False, blank = False];
    required string ipAddr = 3 [help_text = "IP address of this enodeb", db_index = False, max_length = 256, null = False, blank = False];
    optional string created_by = 4 [null = True, blank = True, gui_hidden = True];
    optional bool previously_sync = 5 [null = False, blank = True, default=False, gui_hidden = True];
}

message Handover (XOSBase){
    option verbose_name = "Handover";
    required int32 A3offset = 1 [default = 1, db_index = False, null = False, blank = False];
    required int32 HysteresisA3 = 2 [default = 0, db_index = False, null = False, blank = False];
    required int32 A3TriggerQuantity = 3 [default = 0, db_index = False, null = False, blank = False];
    required int32 A5TriggerType = 4 [default = 0, db_index = False, null = False, blank = False];
    required int32 A5Thresh1Rsrp = 5 [default = 74, db_index = False, null = False, blank = False];
    required int32 A5Thresh1Rsrq = 6 [default = 10, db_index = False, null = False, blank = False];
    required int32 A5Thresh2Rsrp = 7 [default = 78, db_index = False, null = False, blank = False];
    required int32 A5Thresh2Rsrq = 8 [default = 10, db_index = False, null = False, blank = False];
    required int32 HysteresisA5 = 9 [default = 1, db_index = False, null = False, blank = False];
    required int32 A5TriggerQuantity = 10 [default = 0, db_index = False, null = False, blank = False];
    optional string created_by = 11 [null = True, blank = True, gui_hidden = True];
}

message ProgranServiceInstance (ServiceInstance){
    option verbose_name = "Progran Service Instance";
    option description = "Represent a Profile in the Progran ONOS Application";
    option owner_class_name="ProgranService";

    required string DlSchedType = 1 [default = "RR", choices = "(('RR', 'Round Robin'), ('PF', 'Proportional Fairness'), ('MAXCI', 'Maximum C/I'))", max_length = 30, blank = False, null = False, db_index = False];
    required int32 DlAllocRBRate = 2 [default = 0, db_index = False, null = False, blank = False];
    required string UlSchedType = 3 [default = "RR", choices = "(('RR', 'Round Robin'), ('PF', 'Proportional Fairness'), ('MAXCI', 'Maximum C/I'))", max_length = 30, blank = False, null = False, db_index = False];
    required int32 UlAllocRBRate = 4 [default = 0, db_index = False, null = False, blank = False];
    required string start = 5 [content_type = "date", null = True, blank = True];
    required string end = 6 [content_type = "date", null = True, blank = True];
    required int32 AdmControl = 7 [default = "0", choices = "(('0', 'ALL'), ('1', 'Voice Only'), ('2', 'Data Only'))", blank = False, null = False, db_index = False];
    required int32 CellIndividualOffset = 8 [db_index = False, null = False, blank = False];
    required string mmeip = 9 [db_index = False, default = "0.0.0.0", max_length = 256, null = False, blank = False];
    required string mmeport = 10 [db_index = False, default = "8080", max_length = 256, null = False, blank = False];
    required int32 DlWifiRate = 11 [default = 100, db_index = False, null = False, blank = False];
    required int32 DlUeAllocRbRate = 12 [default = "0", help_text = "DL Per UE allocation", db_index = False, null = True, blank = True];
    required string SubsProfile = 13 [ db_index = False, null = True, blank = True];
    optional bool Status = 14 [ db_index = False, null = False, blank = True, default = False];
    optional manytoone enodeb->ENodeB:profiles = 15 [null = True, blank = True];
    required manytoone handover->Handover:profiles = 16 [null = False, blank = False];
    optional int32 active_enodeb_id = 17 [null = True, blank = True, gui_hidden = True];
    optional string created_by = 17 [null = True, blank = True, gui_hidden = True];
    optional bool previously_sync = 18 [null = False, blank = True, default=False, gui_hidden = True];
}


