in clients/http_client_factory.go [105:135]
func UrlRegister(adminTokenData model.AdminTokenData, urlMetaData *model.URIRegister) (registerResult bool, err error) {
if urlMetaData.AppName == "" || urlMetaData.RPCType == "" || urlMetaData.Host == "" || urlMetaData.Port == "" || urlMetaData.NamespaceIds == "" {
return false, shenyu_error.NewShenYuError(constants.MISS_PARAM_ERROR_CODE, constants.MISS_PARAM_ERROR_MSG, err)
}
namespaceIds := strings.Split(urlMetaData.NamespaceIds, ";")
for _, namespaceId := range namespaceIds {
if namespaceId == "" {
continue
}
params := map[string]string{}
params["protocol"] = urlMetaData.Protocol
params["appName"] = urlMetaData.AppName
params["contextPath"] = urlMetaData.ContextPath
params["host"] = urlMetaData.Host
params["port"] = urlMetaData.Port
params["rpcType"] = urlMetaData.RPCType
params["namespaceId"] = namespaceId
headers := adapterHeaders(adminTokenData)
tokenRequest := initShenYuCommonRequest(headers, params, constants.REGISTER_URI, "")
_, err = http_client.DoUrlRegister(tokenRequest)
if err != nil {
return false, err
}
}
return true, nil
}