func RegisterMetaData()

in clients/http_client_factory.go [59:92]


func RegisterMetaData(adminTokenData model.AdminTokenData, metaData *model.MetaDataRegister) (registerResult bool, err error) {
	headers := adapterHeaders(adminTokenData)

	params := map[string]string{}
	if metaData.AppName == "" || metaData.Path == "" || metaData.Host == "" || metaData.Port == "" {
		return false, shenyu_error.NewShenYuError(constants.MISS_PARAM_ERROR_CODE, constants.MISS_PARAM_ERROR_MSG, err)
	}
	params["appName"] = metaData.AppName
	params["path"] = metaData.Path
	params["contextPath"] = metaData.ContextPath
	params["host"] = metaData.Host
	params["port"] = metaData.Port

	if metaData.RPCType != "" {
		params["rpcType"] = metaData.RPCType
	} else {
		params["rpcType"] = constants.RPCTYPE_HTTP
	}

	if metaData.RuleName != "" {
		params["ruleName"] = metaData.RuleName
	} else {
		params["ruleName"] = metaData.Path
	}

	tokenRequest := initShenYuCommonRequest(headers, params, constants.REGISTER_METADATA, "")

	registerResult, err = http_client.RegisterMetaData(tokenRequest)
	if err == nil {
		return registerResult, nil
	} else {
		return false, err
	}
}