Bläddra i källkod

TESLASTREAM SDK Auto Released By tony.ly,Version:1.23.1

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
yixiong.jxy 7 år sedan
förälder
incheckning
db75a5f105

+ 5 - 0
ChangeLog.txt

@@ -1,3 +1,8 @@
+2018-07-26 Version: 1.23.1
+1, Add BatchGetJobMetricInfo API.
+2, Add BatchGetPluginConfigInfo API.
+3, Add GetJobTopology API.
+
 2018-07-13 Version: 1.23.0
 1, New APIs for batch executing commands in cluster: InvokeShellCommand, ListCommands, etc.
 2, New APIs for HybridCluster (link E-HPC with cluster in local IDC): CreateHybridCluster, etc.

+ 106 - 0
services/teslastream/batch_get_job_metric_info.go

@@ -0,0 +1,106 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// BatchGetJobMetricInfo invokes the teslastream.BatchGetJobMetricInfo API synchronously
+// api document: https://help.aliyun.com/api/teslastream/batchgetjobmetricinfo.html
+func (client *Client) BatchGetJobMetricInfo(request *BatchGetJobMetricInfoRequest) (response *BatchGetJobMetricInfoResponse, err error) {
+	response = CreateBatchGetJobMetricInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// BatchGetJobMetricInfoWithChan invokes the teslastream.BatchGetJobMetricInfo API asynchronously
+// api document: https://help.aliyun.com/api/teslastream/batchgetjobmetricinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchGetJobMetricInfoWithChan(request *BatchGetJobMetricInfoRequest) (<-chan *BatchGetJobMetricInfoResponse, <-chan error) {
+	responseChan := make(chan *BatchGetJobMetricInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.BatchGetJobMetricInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// BatchGetJobMetricInfoWithCallback invokes the teslastream.BatchGetJobMetricInfo API asynchronously
+// api document: https://help.aliyun.com/api/teslastream/batchgetjobmetricinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchGetJobMetricInfoWithCallback(request *BatchGetJobMetricInfoRequest, callback func(response *BatchGetJobMetricInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *BatchGetJobMetricInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.BatchGetJobMetricInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// BatchGetJobMetricInfoRequest is the request struct for api BatchGetJobMetricInfo
+type BatchGetJobMetricInfoRequest struct {
+	*requests.RpcRequest
+	JobInfos string `position:"Query" name:"JobInfos"`
+}
+
+// BatchGetJobMetricInfoResponse is the response struct for api BatchGetJobMetricInfo
+type BatchGetJobMetricInfoResponse struct {
+	*responses.BaseResponse
+	Code      int    `json:"Code" xml:"Code"`
+	Message   string `json:"Message" xml:"Message"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      []Job  `json:"Data" xml:"Data"`
+}
+
+// CreateBatchGetJobMetricInfoRequest creates a request to invoke BatchGetJobMetricInfo API
+func CreateBatchGetJobMetricInfoRequest() (request *BatchGetJobMetricInfoRequest) {
+	request = &BatchGetJobMetricInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("TeslaStream", "2018-01-15", "BatchGetJobMetricInfo", "", "")
+	return
+}
+
+// CreateBatchGetJobMetricInfoResponse creates a response to parse from BatchGetJobMetricInfo response
+func CreateBatchGetJobMetricInfoResponse() (response *BatchGetJobMetricInfoResponse) {
+	response = &BatchGetJobMetricInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/teslastream/batch_get_plugin_config_info.go

@@ -0,0 +1,106 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// BatchGetPluginConfigInfo invokes the teslastream.BatchGetPluginConfigInfo API synchronously
+// api document: https://help.aliyun.com/api/teslastream/batchgetpluginconfiginfo.html
+func (client *Client) BatchGetPluginConfigInfo(request *BatchGetPluginConfigInfoRequest) (response *BatchGetPluginConfigInfoResponse, err error) {
+	response = CreateBatchGetPluginConfigInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// BatchGetPluginConfigInfoWithChan invokes the teslastream.BatchGetPluginConfigInfo API asynchronously
+// api document: https://help.aliyun.com/api/teslastream/batchgetpluginconfiginfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchGetPluginConfigInfoWithChan(request *BatchGetPluginConfigInfoRequest) (<-chan *BatchGetPluginConfigInfoResponse, <-chan error) {
+	responseChan := make(chan *BatchGetPluginConfigInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.BatchGetPluginConfigInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// BatchGetPluginConfigInfoWithCallback invokes the teslastream.BatchGetPluginConfigInfo API asynchronously
+// api document: https://help.aliyun.com/api/teslastream/batchgetpluginconfiginfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchGetPluginConfigInfoWithCallback(request *BatchGetPluginConfigInfoRequest, callback func(response *BatchGetPluginConfigInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *BatchGetPluginConfigInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.BatchGetPluginConfigInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// BatchGetPluginConfigInfoRequest is the request struct for api BatchGetPluginConfigInfo
+type BatchGetPluginConfigInfoRequest struct {
+	*requests.RpcRequest
+	PluginInfos string `position:"Query" name:"PluginInfos"`
+}
+
+// BatchGetPluginConfigInfoResponse is the response struct for api BatchGetPluginConfigInfo
+type BatchGetPluginConfigInfoResponse struct {
+	*responses.BaseResponse
+	Code      int      `json:"Code" xml:"Code"`
+	Message   string   `json:"Message" xml:"Message"`
+	RequestId string   `json:"RequestId" xml:"RequestId"`
+	Data      []Plugin `json:"Data" xml:"Data"`
+}
+
+// CreateBatchGetPluginConfigInfoRequest creates a request to invoke BatchGetPluginConfigInfo API
+func CreateBatchGetPluginConfigInfoRequest() (request *BatchGetPluginConfigInfoRequest) {
+	request = &BatchGetPluginConfigInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("TeslaStream", "2018-01-15", "BatchGetPluginConfigInfo", "", "")
+	return
+}
+
+// CreateBatchGetPluginConfigInfoResponse creates a response to parse from BatchGetPluginConfigInfo response
+func CreateBatchGetPluginConfigInfoResponse() (response *BatchGetPluginConfigInfoResponse) {
+	response = &BatchGetPluginConfigInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 81 - 0
services/teslastream/client.go

@@ -0,0 +1,81 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	return
+}
+
+// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
+// this is the common api to create a sdk client
+func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://help.aliyun.com/document_detail/66217.html
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://help.aliyun.com/document_detail/66222.html
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://help.aliyun.com/document_detail/66222.html
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://help.aliyun.com/document_detail/66223.html
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// attention: rsa key pair auth is only Japan regions available
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	return
+}

+ 106 - 0
services/teslastream/get_job_topology.go

@@ -0,0 +1,106 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// GetJobTopology invokes the teslastream.GetJobTopology API synchronously
+// api document: https://help.aliyun.com/api/teslastream/getjobtopology.html
+func (client *Client) GetJobTopology(request *GetJobTopologyRequest) (response *GetJobTopologyResponse, err error) {
+	response = CreateGetJobTopologyResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetJobTopologyWithChan invokes the teslastream.GetJobTopology API asynchronously
+// api document: https://help.aliyun.com/api/teslastream/getjobtopology.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetJobTopologyWithChan(request *GetJobTopologyRequest) (<-chan *GetJobTopologyResponse, <-chan error) {
+	responseChan := make(chan *GetJobTopologyResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetJobTopology(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetJobTopologyWithCallback invokes the teslastream.GetJobTopology API asynchronously
+// api document: https://help.aliyun.com/api/teslastream/getjobtopology.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetJobTopologyWithCallback(request *GetJobTopologyRequest, callback func(response *GetJobTopologyResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetJobTopologyResponse
+		var err error
+		defer close(result)
+		response, err = client.GetJobTopology(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetJobTopologyRequest is the request struct for api GetJobTopology
+type GetJobTopologyRequest struct {
+	*requests.RpcRequest
+	JobName string `position:"Query" name:"JobName"`
+}
+
+// GetJobTopologyResponse is the response struct for api GetJobTopology
+type GetJobTopologyResponse struct {
+	*responses.BaseResponse
+	Code      int    `json:"Code" xml:"Code"`
+	Message   string `json:"Message" xml:"Message"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      []Job  `json:"Data" xml:"Data"`
+}
+
+// CreateGetJobTopologyRequest creates a request to invoke GetJobTopology API
+func CreateGetJobTopologyRequest() (request *GetJobTopologyRequest) {
+	request = &GetJobTopologyRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("TeslaStream", "2018-01-15", "GetJobTopology", "", "")
+	return
+}
+
+// CreateGetJobTopologyResponse creates a response to parse from GetJobTopology response
+func CreateGetJobTopologyResponse() (response *GetJobTopologyResponse) {
+	response = &GetJobTopologyResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 21 - 0
services/teslastream/struct_childrens.go

@@ -0,0 +1,21 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Childrens is a nested struct in teslastream response
+type Childrens struct {
+	Children []string `json:"Children" xml:"Children"`
+}

+ 21 - 0
services/teslastream/struct_data_in_batch_get_job_metric_info.go

@@ -0,0 +1,21 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInBatchGetJobMetricInfo is a nested struct in teslastream response
+type DataInBatchGetJobMetricInfo struct {
+	Job []Job `json:"Job" xml:"Job"`
+}

+ 21 - 0
services/teslastream/struct_data_in_batch_get_plugin_config_info.go

@@ -0,0 +1,21 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInBatchGetPluginConfigInfo is a nested struct in teslastream response
+type DataInBatchGetPluginConfigInfo struct {
+	Plugin []Plugin `json:"plugin" xml:"plugin"`
+}

+ 21 - 0
services/teslastream/struct_data_in_get_job_topology.go

@@ -0,0 +1,21 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInGetJobTopology is a nested struct in teslastream response
+type DataInGetJobTopology struct {
+	Job []Job `json:"Job" xml:"Job"`
+}

+ 35 - 0
services/teslastream/struct_job.go

@@ -0,0 +1,35 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Job is a nested struct in teslastream response
+type Job struct {
+	Text           string   `json:"Text" xml:"Text"`
+	TpsOut         int      `json:"TpsOut" xml:"TpsOut"`
+	CpuUsed        float64  `json:"CpuUsed" xml:"CpuUsed"`
+	Priority       string   `json:"Priority" xml:"Priority"`
+	TpsIn          int      `json:"TpsIn" xml:"TpsIn"`
+	Nickname       string   `json:"Nickname" xml:"Nickname"`
+	CpuRequest     int      `json:"CpuRequest" xml:"CpuRequest"`
+	MemUsed        float64  `json:"MemUsed" xml:"MemUsed"`
+	PluginRelation string   `json:"PluginRelation" xml:"PluginRelation"`
+	JobUniqKey     string   `json:"JobUniqKey" xml:"JobUniqKey"`
+	Delay          int      `json:"Delay" xml:"Delay"`
+	MemRequest     int      `json:"MemRequest" xml:"MemRequest"`
+	Type           string   `json:"Type" xml:"Type"`
+	Parents        []string `json:"Parents" xml:"Parents"`
+	Childrens      []string `json:"Childrens" xml:"Childrens"`
+}

+ 21 - 0
services/teslastream/struct_parents.go

@@ -0,0 +1,21 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Parents is a nested struct in teslastream response
+type Parents struct {
+	Parent []string `json:"Parent" xml:"Parent"`
+}

+ 22 - 0
services/teslastream/struct_plugin.go

@@ -0,0 +1,22 @@
+package teslastream
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Plugin is a nested struct in teslastream response
+type Plugin struct {
+	PluginProperties string `json:"PluginProperties" xml:"PluginProperties"`
+	PluginUniqKey    string `json:"PluginUniqKey" xml:"PluginUniqKey"`
+}