// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdnetworks;

import "aqdsystems.proto";
import "aqdlocations.proto";


message DynamicRange {
    optional string start = 1;
    optional string end = 2;
    optional string range_class = 3;
}

message Network {
    optional string name = 1;
    optional string ip = 2;
    optional int32 cidr = 3;
    optional string bcast = 4;
    optional string netmask = 5;
    optional string side = 6;
    optional string sysloc = 7;
    optional aqdlocations.Location location = 8;
    repeated aqdsystems.Host hosts = 9;
    optional int32 id = 10 [deprecated=true];
    optional string type = 11;
    optional bool discoverable = 12 [deprecated=true];
    optional bool discovered = 13 [deprecated=true];
    optional string env_name = 14;
    repeated DynamicRange dynamic_ranges = 15;
    repeated string routers = 16;
    optional string compartment = 17;
    optional aqdsystems.NetworkEnvironment network_environment = 18;
    // Note: network_environment.name == env_name
}

message NetworkList {
    repeated Network networks = 1;
}

message NetworkCompartment {
    required string name = 1;
}

message NetworkCompartmentList {
    repeated NetworkCompartment compartments = 1;
}

// -*- cpy-indent-level: 4; indent-tabs-mode: nil -*-
// ex: set expandtab softtabstop=4 shiftwidth=4:
package aqdnetworks;

import "aqdsystems.proto";
import "aqdlocations.proto";


message DynamicRange {
    optional string start = 1;
    optional string end = 2;
    optional string range_class = 3;
}

message Network {
    optional string name = 1;
    optional string ip = 2;
    optional int32 cidr = 3;
    optional string bcast = 4;
    optional string netmask = 5;
    optional string side = 6;
    optional string sysloc = 7;
    optional aqdlocations.Location location = 8;
    repeated aqdsystems.Host hosts = 9;
    optional int32 id = 10 [deprecated=true];
    optional string type = 11;
    optional bool discoverable = 12 [deprecated=true];
    optional bool discovered = 13 [deprecated=true];
    optional string env_name = 14;
    repeated DynamicRange dynamic_ranges = 15;
    repeated string routers = 16;
    optional string compartment = 17;
    optional aqdsystems.NetworkEnvironment network_environment = 18;
    repeated aqdsystems.ServiceAddress service_addresses = 19;
    // Note: network_environment.name == env_name
}

message NetworkList {
    repeated Network networks = 1;
}

message NetworkCompartment {
    required string name = 1;
}

message NetworkCompartmentList {
    repeated NetworkCompartment compartments = 1;
}

Add service addresses to Network skeleton
Add service addresses to Network skeleton

Add service address attribute to Network skeleton so that full assigned
address view in network can be created.

Addresses Issue: Jira/AQUILON-4523
