# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
#
#
+#
# Abstract: Routing Manager's RESTful API definition
# Date: 28 August 2019
#
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
+
==================================================================================
*/
/*
# By default this file is in the docker build directory,
# but the location can configured in the JJB template.
---
-tag: 0.3.9
+tag: 0.4.0
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
from docs_conf.conf import *
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
project_cfg: oran
project: ric-plt-rtmgr
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
#
#
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
+#
#==================================================================================
#
#
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
#
#
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
#
#
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
#
#
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
"encoding/json"
"errors"
"fmt"
- "github.com/go-openapi/loads"
- "github.com/go-openapi/runtime/middleware"
"net/url"
"os"
"routing-manager/pkg/models"
"routing-manager/pkg/sdl"
"strconv"
"time"
+
+ "github.com/go-openapi/loads"
+ "github.com/go-openapi/runtime/middleware"
)
//var myClient = &http.Client{Timeout: 1 * time.Second}
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
import (
"encoding/json"
"fmt"
- "github.com/go-openapi/swag"
"io/ioutil"
"net"
"net/http"
"routing-manager/pkg/stub"
"testing"
"time"
+
+ "github.com/go-openapi/swag"
)
var BasicXAppLists = []byte(`[
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
import (
"errors"
- httptransport "github.com/go-openapi/runtime/client"
- "github.com/go-openapi/strfmt"
- "github.com/go-openapi/swag"
"net/url"
apiclient "routing-manager/pkg/appmgr_client"
"routing-manager/pkg/appmgr_client/operations"
"routing-manager/pkg/appmgr_model"
"routing-manager/pkg/rtmgr"
"time"
+
+ httptransport "github.com/go-openapi/runtime/client"
+ "github.com/go-openapi/strfmt"
+ "github.com/go-openapi/swag"
)
var (
func CreateSubReq(restUrl string, restPort string) *appmgr_model.SubscriptionRequest {
// TODO: parameterize function
subData := appmgr_model.SubscriptionData{
- TargetURL: swag.String(restUrl + ":" + restPort + "/ric/v1/handles/xapp-handle/"),
- EventType: appmgr_model.EventTypeAll,
+ TargetURL: swag.String(restUrl + ":" + restPort + "/ric/v1/handles/xapp-handle/"),
+ EventType: appmgr_model.EventTypeAll,
MaxRetries: swag.Int64(5),
RetryTimer: swag.Int64(10),
}
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
import (
"errors"
- "github.com/go-openapi/swag"
"net"
"net/http"
"net/http/httptest"
"reflect"
"routing-manager/pkg/appmgr_model"
"testing"
+
+ "github.com/go-openapi/swag"
)
func TestGetNbi(t *testing.T) {
MaxRetries: swag.Int64(5),
RetryTimer: swag.Int64(10),
}
- subReq := appmgr_model.SubscriptionRequest{
- Data: &subData,
- }
+ subReq := appmgr_model.SubscriptionRequest{
+ Data: &subData,
+ }
subReq2 := CreateSubReq("localhost", "8000")
if reflect.TypeOf(subReq) != reflect.TypeOf(*subReq2) {
t.Errorf("Invalid type, got: %v, want: %v.", reflect.TypeOf(subReq), reflect.TypeOf(*subReq2))
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
"errors"
"routing-manager/pkg/rtmgr"
"routing-manager/pkg/sbi"
- "strconv"
"runtime"
+ "strconv"
)
var (
rxList := []rtmgr.EndpointList{[]rtmgr.Endpoint{*rx}}
messageId := rtmgr.MessageTypes[messageType]
route := rtmgr.RouteTableEntry{
- MessageType: messageId,
- TxList: txList,
- RxGroups: rxList,
- SubID: subId}
- *routeTable = append(*routeTable, route)
- rtmgr.Logger.Debug("Route added: MessageTyp: %v, Tx: %v, Rx: %v, SubId: %v", messageId, tx.Uuid, rx.Uuid, subId)
- rtmgr.Logger.Trace("Route added: MessageTyp: %v, Tx: %v, Rx: %v, SubId: %v", messageId, tx, rx, subId)
- } else {
- pc,_,_,ok := runtime.Caller(1)
- details := runtime.FuncForPC(pc)
- if ok && details != nil {
- rtmgr.Logger.Error("Route addition skipped: Either TX or RX endpoint not present. Caller function is %s", details.Name())
- }
+ MessageType: messageId,
+ TxList: txList,
+ RxGroups: rxList,
+ SubID: subId}
+ *routeTable = append(*routeTable, route)
+ rtmgr.Logger.Debug("Route added: MessageTyp: %v, Tx: %v, Rx: %v, SubId: %v", messageId, tx.Uuid, rx.Uuid, subId)
+ rtmgr.Logger.Trace("Route added: MessageTyp: %v, Tx: %v, Rx: %v, SubId: %v", messageId, tx, rx, subId)
+ } else {
+ pc, _, _, ok := runtime.Caller(1)
+ details := runtime.FuncForPC(pc)
+ if ok && details != nil {
+ rtmgr.Logger.Error("Route addition skipped: Either TX or RX endpoint not present. Caller function is %s", details.Name())
}
+ }
}
func (r *Rpe) generateXappRoutes(xAppEp *rtmgr.Endpoint, e2TermEp *rtmgr.Endpoint, subManEp *rtmgr.Endpoint, routeTable *rtmgr.RouteTable) {
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
import (
"encoding/json"
"errors"
- "github.com/jcelliott/lumber"
"io/ioutil"
"os"
"strings"
+
+ "github.com/jcelliott/lumber"
)
var (
// CamelCase Message Types are for being able to test with old fashioned admin control xApps
// TODO: Add a separate message definition file (Not using the one from RMR to not create dependency on that library).
MessageTypes = map[string]string{
- "HandoverPreparation": "0",
- "HandoverCancel": "1",
- "LoadIndication": "2",
- "ErrorIndication": "3",
- "SNStatusTransfer": "4",
- "UEContextRelease": "5",
- "X2Setup": "6",
- "Reset": "7",
- "E2_TERM_INIT": "1100",
- "RAN_CONNECTED": "1200",
- "RAN_RESTARTED": "1210",
- "RAN_RECONFIGURED": "1220",
- "RIC_SCTP_CLEAR_ALL": "1090",
- "RIC_SCTP_CONNECTION_FAILURE": "1080",
- "RIC_X2_SETUP": "10000",
- "RIC_X2_RESPONSE": "10001",
- "RIC_X2_RESOURCE_STATUS_REQUEST": "10002",
- "RIC_X2_RESOURCE_STATUS_RESPONSE": "10003",
- "RIC_X2_LOAD_INFORMATION": "10004",
- "RIC_E2_TERMINATION_HC_REQUEST": "10005",
- "RIC_E2_TERMINATION_HC_RESPONSE": "10006",
- "RIC_E2_MANAGER_HC_REQUEST": "10007",
- "RIC_E2_MANAGER_HC_RESPONSE": "10008",
- "RIC_ENB_LOAD_INFORMATION": "10020",
- "RIC_ERROR_INDICATION": "10030",
- "RIC_X2_SETUP_REQ": "10060",
- "RIC_X2_SETUP_RESP": "10061",
- "RIC_X2_SETUP_FAILURE": "10062",
- "RIC_X2_RESET_REQ": "10070",
- "RIC_X2_RESET_RESP": "10071",
- "RIC_ENB_CONF_UPDATE": "10080",
- "RIC_ENB_CONF_UPDATE_ACK": "10081",
- "RIC_ENB_CONF_UPDATE_FAILURE": "10082",
- "RIC_RES_STATUS_REQ": "10090",
- "RIC_RES_STATUS_RESP": "10091",
- "RIC_RES_STATUS_FAILURE": "10092",
- "RIC_RESOURCE_STATUS_UPDATE": "10100",
- "RIC_ENDC_X2_SETUP_REQ": "10360",
- "RIC_ENDC_X2_SETUP_RESP": "10361",
- "RIC_ENDC_X2_SETUP_FAILURE": "10362",
- "RIC_ENDC_CONF_UPDATE": "10370",
- "RIC_ENDC_CONF_UPDATE_ACK": "10371",
- "RIC_ENDC_CONF_UPDATE_FAILURE": "10372",
- "RIC_GNB_STATUS_INDICATION": "10450",
- "RIC_SUB_REQ": "12010",
- "RIC_SUB_RESP": "12011",
- "RIC_SUB_FAILURE": "12012",
- "RIC_SUB_DEL_REQ": "12020",
- "RIC_SUB_DEL_RESP": "12021",
- "RIC_SUB_DEL_FAILURE": "12022",
- "RIC_CONTROL_REQ": "12040",
- "RIC_CONTROL_ACK": "12041",
- "RIC_CONTROL_FAILURE": "12042",
- "RIC_INDICATION": "12050",
- "DC_ADM_INT_CONTROL": "20000",
- "DC_ADM_INT_CONTROL_ACK": "20001",
+ "HandoverPreparation": "0",
+ "HandoverCancel": "1",
+ "LoadIndication": "2",
+ "ErrorIndication": "3",
+ "SNStatusTransfer": "4",
+ "UEContextRelease": "5",
+ "X2Setup": "6",
+ "Reset": "7",
+ "E2_TERM_INIT": "1100",
+ "RAN_CONNECTED": "1200",
+ "RAN_RESTARTED": "1210",
+ "RAN_RECONFIGURED": "1220",
+ "RIC_SCTP_CLEAR_ALL": "1090",
+ "RIC_SCTP_CONNECTION_FAILURE": "1080",
+ "RIC_X2_SETUP": "10000",
+ "RIC_X2_RESPONSE": "10001",
+ "RIC_X2_RESOURCE_STATUS_REQUEST": "10002",
+ "RIC_X2_RESOURCE_STATUS_RESPONSE": "10003",
+ "RIC_X2_LOAD_INFORMATION": "10004",
+ "RIC_E2_TERMINATION_HC_REQUEST": "10005",
+ "RIC_E2_TERMINATION_HC_RESPONSE": "10006",
+ "RIC_E2_MANAGER_HC_REQUEST": "10007",
+ "RIC_E2_MANAGER_HC_RESPONSE": "10008",
+ "RIC_ENB_LOAD_INFORMATION": "10020",
+ "RIC_ERROR_INDICATION": "10030",
+ "RIC_X2_SETUP_REQ": "10060",
+ "RIC_X2_SETUP_RESP": "10061",
+ "RIC_X2_SETUP_FAILURE": "10062",
+ "RIC_X2_RESET_REQ": "10070",
+ "RIC_X2_RESET_RESP": "10071",
+ "RIC_ENB_CONF_UPDATE": "10080",
+ "RIC_ENB_CONF_UPDATE_ACK": "10081",
+ "RIC_ENB_CONF_UPDATE_FAILURE": "10082",
+ "RIC_RES_STATUS_REQ": "10090",
+ "RIC_RES_STATUS_RESP": "10091",
+ "RIC_RES_STATUS_FAILURE": "10092",
+ "RIC_RESOURCE_STATUS_UPDATE": "10100",
+ "RIC_ENDC_X2_SETUP_REQ": "10360",
+ "RIC_ENDC_X2_SETUP_RESP": "10361",
+ "RIC_ENDC_X2_SETUP_FAILURE": "10362",
+ "RIC_ENDC_CONF_UPDATE": "10370",
+ "RIC_ENDC_CONF_UPDATE_ACK": "10371",
+ "RIC_ENDC_CONF_UPDATE_FAILURE": "10372",
+ "RIC_GNB_STATUS_INDICATION": "10450",
+ "RIC_SUB_REQ": "12010",
+ "RIC_SUB_RESP": "12011",
+ "RIC_SUB_FAILURE": "12012",
+ "RIC_SUB_DEL_REQ": "12020",
+ "RIC_SUB_DEL_RESP": "12021",
+ "RIC_SUB_DEL_FAILURE": "12022",
+ "RIC_CONTROL_REQ": "12040",
+ "RIC_CONTROL_ACK": "12041",
+ "RIC_CONTROL_FAILURE": "12042",
+ "RIC_INDICATION": "12050",
+ "DC_ADM_INT_CONTROL": "20000",
+ "DC_ADM_INT_CONTROL_ACK": "20001",
"RIC_CONTROL_XAPP_CONFIG_REQUEST": "100000",
"RIC_CONTROL_XAPP_CONFIG_RESPONSE": "100001",
}
case "TRACE":
Logger.Info("Trace mode")
Logger.Level(lumber.TRACE)
- return nil
+ return nil
default:
Logger.Error("invalid log mode, setting info")
Logger.Level(lumber.INFO)
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
import (
"errors"
+ "routing-manager/pkg/rtmgr"
+ "strconv"
+
"nanomsg.org/go/mangos/v2"
"nanomsg.org/go/mangos/v2/protocol/push"
_ "nanomsg.org/go/mangos/v2/transport/all"
- "routing-manager/pkg/rtmgr"
- "strconv"
)
type NngPush struct {
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
+
+ This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ platform project (RICP).
+
==================================================================================
*/
/*
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+#
+# This source code is part of the near-RT RIC (RAN Intelligent Controller)
+# platform project (RICP).
+#
#==================================================================================
#
#