Browse Source

OTS SDK Auto Released By wanhong.chenwh,Version:1.22.6

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 7 years ago
parent
commit
1304f99160

+ 3 - 0
ChangeLog.txt

@@ -1,3 +1,6 @@
+2018-07-13 Version: 1.22.6
+1, Release 2016-06-20 TableStore Open API
+
 2018-07-11 Version: 1.22.5
 1, new function: Attach and Detach Rds instance of scalingGroup.
 

BIN
services/ots/.DS_Store


+ 112 - 0
services/ots/bind_instance2_vpc.go

@@ -0,0 +1,112 @@
+package ots
+
+//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"
+)
+
+// BindInstance2Vpc invokes the ots.BindInstance2Vpc API synchronously
+// api document: https://help.aliyun.com/api/ots/bindinstance2vpc.html
+func (client *Client) BindInstance2Vpc(request *BindInstance2VpcRequest) (response *BindInstance2VpcResponse, err error) {
+	response = CreateBindInstance2VpcResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// BindInstance2VpcWithChan invokes the ots.BindInstance2Vpc API asynchronously
+// api document: https://help.aliyun.com/api/ots/bindinstance2vpc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BindInstance2VpcWithChan(request *BindInstance2VpcRequest) (<-chan *BindInstance2VpcResponse, <-chan error) {
+	responseChan := make(chan *BindInstance2VpcResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.BindInstance2Vpc(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// BindInstance2VpcWithCallback invokes the ots.BindInstance2Vpc API asynchronously
+// api document: https://help.aliyun.com/api/ots/bindinstance2vpc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BindInstance2VpcWithCallback(request *BindInstance2VpcRequest, callback func(response *BindInstance2VpcResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *BindInstance2VpcResponse
+		var err error
+		defer close(result)
+		response, err = client.BindInstance2Vpc(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// BindInstance2VpcRequest is the request struct for api BindInstance2Vpc
+type BindInstance2VpcRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	InstanceVpcName string           `position:"Query" name:"InstanceVpcName"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string           `position:"Query" name:"InstanceName"`
+	VpcId           string           `position:"Query" name:"VpcId"`
+	VirtualSwitchId string           `position:"Query" name:"VirtualSwitchId"`
+	RegionNo        string           `position:"Query" name:"RegionNo"`
+	Network         string           `position:"Query" name:"Network"`
+}
+
+// BindInstance2VpcResponse is the response struct for api BindInstance2Vpc
+type BindInstance2VpcResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Endpoint  string `json:"Endpoint" xml:"Endpoint"`
+	Domain    string `json:"Domain" xml:"Domain"`
+}
+
+// CreateBindInstance2VpcRequest creates a request to invoke BindInstance2Vpc API
+func CreateBindInstance2VpcRequest() (request *BindInstance2VpcRequest) {
+	request = &BindInstance2VpcRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "BindInstance2Vpc", "ots", "openAPI")
+	return
+}
+
+// CreateBindInstance2VpcResponse creates a response to parse from BindInstance2Vpc response
+func CreateBindInstance2VpcResponse() (response *BindInstance2VpcResponse) {
+	response = &BindInstance2VpcResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 38 - 0
services/ots/client.go

@@ -20,24 +20,62 @@ import (
 	"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
+}

+ 0 - 115
services/ots/create_trigger.go

@@ -1,115 +0,0 @@
-package ots
-
-//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 (
-	"encoding/json"
-	"fmt"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/errors"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
-)
-
-func (client *Client) CreateTrigger(request *CreateTriggerRequest) (response *CreateTriggerResponse, err error) {
-	response = CreateCreateTriggerResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-func (client *Client) CreateTriggerWithChan(request *CreateTriggerRequest) (<-chan *CreateTriggerResponse, <-chan error) {
-	responseChan := make(chan *CreateTriggerResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.CreateTrigger(request)
-		responseChan <- response
-		errChan <- err
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-func (client *Client) CreateTriggerWithCallback(request *CreateTriggerRequest, callback func(response *CreateTriggerResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *CreateTriggerResponse
-		var err error
-		defer close(result)
-		response, err = client.CreateTrigger(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-type CreateTriggerRequest struct {
-	*requests.RoaRequest
-	InstanceName string `position:"Path" name:"InstanceName"`
-	ApiVersion   string `position:"Path" name:"ApiVersion"`
-	TableName    string `position:"Path" name:"TableName"`
-}
-
-type CreateTriggerResponse struct {
-	*responses.BaseResponse
-}
-
-func (resp *CreateTriggerResponse) GetBody() (body *CreateTriggerResponseBody, err error) {
-	body = &CreateTriggerResponseBody{}
-	bodyBuf := resp.GetHttpContentBytes()
-	err = json.Unmarshal(bodyBuf, body)
-	if err != nil {
-		errorMsg := fmt.Sprintf(CanNotUnmarshalRequestBodyMessage, string(bodyBuf))
-		return nil, errors.NewClientError(CanNotUnmarshalRequestBodyCode, errorMsg, err)
-	}
-	return
-}
-
-func NewCreateTriggerRequest(domain, instance, table string, body *CreateTriggerRequestBody) (request *CreateTriggerRequest, err error) {
-	request = &CreateTriggerRequest{
-		RoaRequest:   &requests.RoaRequest{},
-		InstanceName: instance,
-		TableName:    table,
-		ApiVersion:   ApiVersion,
-	}
-	request.InitWithApiInfo("Ots", "2017-11-11", "CreateTrigger", "/[ApiVersion]/instance/[InstanceName]/table/[TableName]/trigger", "", "")
-	request.Domain = domain
-	request.Method = "POST"
-
-	bodyBuf, err := json.Marshal(body)
-	if err != nil {
-		errorMsg := fmt.Sprintf(CanNotMarshalRequestBodyMessage, body)
-		return nil, errors.NewClientError(CanNotMarshalRequestBodyCode, errorMsg, err)
-	}
-	request.SetContent(bodyBuf)
-	return
-}
-
-func CreateCreateTriggerResponse() (response *CreateTriggerResponse) {
-	response = &CreateTriggerResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 105 - 0
services/ots/delete_instance.go

@@ -0,0 +1,105 @@
+package ots
+
+//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"
+)
+
+// DeleteInstance invokes the ots.DeleteInstance API synchronously
+// api document: https://help.aliyun.com/api/ots/deleteinstance.html
+func (client *Client) DeleteInstance(request *DeleteInstanceRequest) (response *DeleteInstanceResponse, err error) {
+	response = CreateDeleteInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteInstanceWithChan invokes the ots.DeleteInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/deleteinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteInstanceWithChan(request *DeleteInstanceRequest) (<-chan *DeleteInstanceResponse, <-chan error) {
+	responseChan := make(chan *DeleteInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteInstanceWithCallback invokes the ots.DeleteInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/deleteinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteInstanceWithCallback(request *DeleteInstanceRequest, callback func(response *DeleteInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteInstanceRequest is the request struct for api DeleteInstance
+type DeleteInstanceRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string           `position:"Query" name:"InstanceName"`
+}
+
+// DeleteInstanceResponse is the response struct for api DeleteInstance
+type DeleteInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteInstanceRequest creates a request to invoke DeleteInstance API
+func CreateDeleteInstanceRequest() (request *DeleteInstanceRequest) {
+	request = &DeleteInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "DeleteInstance", "ots", "openAPI")
+	return
+}
+
+// CreateDeleteInstanceResponse creates a response to parse from DeleteInstance response
+func CreateDeleteInstanceResponse() (response *DeleteInstanceResponse) {
+	response = &DeleteInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 112 - 0
services/ots/delete_tags.go

@@ -0,0 +1,112 @@
+package ots
+
+//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"
+)
+
+// DeleteTags invokes the ots.DeleteTags API synchronously
+// api document: https://help.aliyun.com/api/ots/deletetags.html
+func (client *Client) DeleteTags(request *DeleteTagsRequest) (response *DeleteTagsResponse, err error) {
+	response = CreateDeleteTagsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteTagsWithChan invokes the ots.DeleteTags API asynchronously
+// api document: https://help.aliyun.com/api/ots/deletetags.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteTagsWithChan(request *DeleteTagsRequest) (<-chan *DeleteTagsResponse, <-chan error) {
+	responseChan := make(chan *DeleteTagsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteTags(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteTagsWithCallback invokes the ots.DeleteTags API asynchronously
+// api document: https://help.aliyun.com/api/ots/deletetags.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteTagsWithCallback(request *DeleteTagsRequest, callback func(response *DeleteTagsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteTagsResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteTags(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteTagsRequest is the request struct for api DeleteTags
+type DeleteTagsRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string               `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer     `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string               `position:"Query" name:"InstanceName"`
+	TagInfo         *[]DeleteTagsTagInfo `position:"Query" name:"TagInfo"  type:"Repeated"`
+}
+
+// DeleteTagsTagInfo is a repeated param struct in DeleteTagsRequest
+type DeleteTagsTagInfo struct {
+	TagKey   string `name:"TagKey"`
+	TagValue string `name:"TagValue"`
+}
+
+// DeleteTagsResponse is the response struct for api DeleteTags
+type DeleteTagsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteTagsRequest creates a request to invoke DeleteTags API
+func CreateDeleteTagsRequest() (request *DeleteTagsRequest) {
+	request = &DeleteTagsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "DeleteTags", "ots", "openAPI")
+	return
+}
+
+// CreateDeleteTagsResponse creates a response to parse from DeleteTags response
+func CreateDeleteTagsResponse() (response *DeleteTagsResponse) {
+	response = &DeleteTagsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 0 - 96
services/ots/delete_trigger.go

@@ -1,96 +0,0 @@
-package ots
-
-//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"
-)
-
-func (client *Client) DeleteTrigger(request *DeleteTriggerRequest) (response *DeleteTriggerResponse, err error) {
-	response = CreateDeleteTriggerResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-func (client *Client) DeleteTriggerWithChan(request *DeleteTriggerRequest) (<-chan *DeleteTriggerResponse, <-chan error) {
-	responseChan := make(chan *DeleteTriggerResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.DeleteTrigger(request)
-		responseChan <- response
-		errChan <- err
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-func (client *Client) DeleteTriggerWithCallback(request *DeleteTriggerRequest, callback func(response *DeleteTriggerResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *DeleteTriggerResponse
-		var err error
-		defer close(result)
-		response, err = client.DeleteTrigger(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-type DeleteTriggerRequest struct {
-	*requests.RoaRequest
-	InstanceName string `position:"Path" name:"InstanceName"`
-	TriggerName  string `position:"Path" name:"TriggerName"`
-	ApiVersion   string `position:"Path" name:"ApiVersion"`
-	TableName    string `position:"Path" name:"TableName"`
-}
-
-type DeleteTriggerResponse struct {
-	*responses.BaseResponse
-}
-
-func NewDeleteTriggerRequest(domain, instance, table, trigger string) (request *DeleteTriggerRequest) {
-	request = &DeleteTriggerRequest{
-		RoaRequest:   &requests.RoaRequest{},
-		InstanceName: instance,
-		TableName:    table,
-		TriggerName:  trigger,
-		ApiVersion:   ApiVersion,
-	}
-	request.InitWithApiInfo("Ots", "2017-11-11", "DeleteTrigger", "/[ApiVersion]/instance/[InstanceName]/table/[TableName]/trigger/[TriggerName]", "", "")
-	request.Domain = domain
-	request.Method = "DELETE"
-	return
-}
-
-func CreateDeleteTriggerResponse() (response *DeleteTriggerResponse) {
-	response = &DeleteTriggerResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 106 - 0
services/ots/get_instance.go

@@ -0,0 +1,106 @@
+package ots
+
+//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"
+)
+
+// GetInstance invokes the ots.GetInstance API synchronously
+// api document: https://help.aliyun.com/api/ots/getinstance.html
+func (client *Client) GetInstance(request *GetInstanceRequest) (response *GetInstanceResponse, err error) {
+	response = CreateGetInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetInstanceWithChan invokes the ots.GetInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/getinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetInstanceWithChan(request *GetInstanceRequest) (<-chan *GetInstanceResponse, <-chan error) {
+	responseChan := make(chan *GetInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetInstanceWithCallback invokes the ots.GetInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/getinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetInstanceWithCallback(request *GetInstanceRequest, callback func(response *GetInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.GetInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetInstanceRequest is the request struct for api GetInstance
+type GetInstanceRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string           `position:"Query" name:"InstanceName"`
+}
+
+// GetInstanceResponse is the response struct for api GetInstance
+type GetInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId    string       `json:"RequestId" xml:"RequestId"`
+	InstanceInfo InstanceInfo `json:"InstanceInfo" xml:"InstanceInfo"`
+}
+
+// CreateGetInstanceRequest creates a request to invoke GetInstance API
+func CreateGetInstanceRequest() (request *GetInstanceRequest) {
+	request = &GetInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "GetInstance", "ots", "openAPI")
+	return
+}
+
+// CreateGetInstanceResponse creates a response to parse from GetInstance response
+func CreateGetInstanceResponse() (response *GetInstanceResponse) {
+	response = &GetInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 0 - 109
services/ots/get_trigger.go

@@ -1,109 +0,0 @@
-package ots
-
-//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 (
-	"encoding/json"
-	"fmt"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/errors"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
-)
-
-func (client *Client) GetTrigger(request *GetTriggerRequest) (response *GetTriggerResponse, err error) {
-	response = CreateGetTriggerResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-func (client *Client) GetTriggerWithChan(request *GetTriggerRequest) (<-chan *GetTriggerResponse, <-chan error) {
-	responseChan := make(chan *GetTriggerResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.GetTrigger(request)
-		responseChan <- response
-		errChan <- err
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-func (client *Client) GetTriggerWithCallback(request *GetTriggerRequest, callback func(response *GetTriggerResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *GetTriggerResponse
-		var err error
-		defer close(result)
-		response, err = client.GetTrigger(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-type GetTriggerRequest struct {
-	*requests.RoaRequest
-	InstanceName string `position:"Path" name:"InstanceName"`
-	TriggerName  string `position:"Path" name:"TriggerName"`
-	ApiVersion   string `position:"Path" name:"ApiVersion"`
-	TableName    string `position:"Path" name:"TableName"`
-}
-
-type GetTriggerResponse struct {
-	*responses.BaseResponse
-}
-
-func (resp *GetTriggerResponse) GetBody() (body *GetTriggerResponseBody, err error) {
-	body = &GetTriggerResponseBody{}
-	bodyBuf := resp.GetHttpContentBytes()
-	err = json.Unmarshal(bodyBuf, body)
-	if err != nil {
-		errorMsg := fmt.Sprintf(CanNotUnmarshalRequestBodyMessage, string(bodyBuf))
-		return nil, errors.NewClientError(CanNotUnmarshalRequestBodyCode, errorMsg, err)
-	}
-	return
-}
-
-func NewGetTriggerRequest(domain, instance, table, trigger string) (request *GetTriggerRequest) {
-	request = &GetTriggerRequest{
-		RoaRequest:   &requests.RoaRequest{},
-		InstanceName: instance,
-		TableName:    table,
-		TriggerName:  trigger,
-		ApiVersion:   ApiVersion,
-	}
-	request.InitWithApiInfo("Ots", "2017-11-11", "GetTrigger", "/[ApiVersion]/instance/[InstanceName]/table/[TableName]/trigger/[TriggerName]", "", "")
-	request.Domain = domain
-	return
-}
-
-func CreateGetTriggerResponse() (response *GetTriggerResponse) {
-	response = &GetTriggerResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 115 - 0
services/ots/insert_instance.go

@@ -0,0 +1,115 @@
+package ots
+
+//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"
+)
+
+// InsertInstance invokes the ots.InsertInstance API synchronously
+// api document: https://help.aliyun.com/api/ots/insertinstance.html
+func (client *Client) InsertInstance(request *InsertInstanceRequest) (response *InsertInstanceResponse, err error) {
+	response = CreateInsertInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// InsertInstanceWithChan invokes the ots.InsertInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/insertinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) InsertInstanceWithChan(request *InsertInstanceRequest) (<-chan *InsertInstanceResponse, <-chan error) {
+	responseChan := make(chan *InsertInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.InsertInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// InsertInstanceWithCallback invokes the ots.InsertInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/insertinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) InsertInstanceWithCallback(request *InsertInstanceRequest, callback func(response *InsertInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *InsertInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.InsertInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// InsertInstanceRequest is the request struct for api InsertInstance
+type InsertInstanceRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string                   `position:"Query" name:"access_key_id"`
+	ClusterType     string                   `position:"Query" name:"ClusterType"`
+	ResourceOwnerId requests.Integer         `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string                   `position:"Query" name:"InstanceName"`
+	Description     string                   `position:"Query" name:"Description"`
+	TagInfo         *[]InsertInstanceTagInfo `position:"Query" name:"TagInfo"  type:"Repeated"`
+	Network         string                   `position:"Query" name:"Network"`
+}
+
+// InsertInstanceTagInfo is a repeated param struct in InsertInstanceRequest
+type InsertInstanceTagInfo struct {
+	TagKey   string `name:"TagKey"`
+	TagValue string `name:"TagValue"`
+}
+
+// InsertInstanceResponse is the response struct for api InsertInstance
+type InsertInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateInsertInstanceRequest creates a request to invoke InsertInstance API
+func CreateInsertInstanceRequest() (request *InsertInstanceRequest) {
+	request = &InsertInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "InsertInstance", "ots", "openAPI")
+	return
+}
+
+// CreateInsertInstanceResponse creates a response to parse from InsertInstance response
+func CreateInsertInstanceResponse() (response *InsertInstanceResponse) {
+	response = &InsertInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 112 - 0
services/ots/insert_tags.go

@@ -0,0 +1,112 @@
+package ots
+
+//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"
+)
+
+// InsertTags invokes the ots.InsertTags API synchronously
+// api document: https://help.aliyun.com/api/ots/inserttags.html
+func (client *Client) InsertTags(request *InsertTagsRequest) (response *InsertTagsResponse, err error) {
+	response = CreateInsertTagsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// InsertTagsWithChan invokes the ots.InsertTags API asynchronously
+// api document: https://help.aliyun.com/api/ots/inserttags.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) InsertTagsWithChan(request *InsertTagsRequest) (<-chan *InsertTagsResponse, <-chan error) {
+	responseChan := make(chan *InsertTagsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.InsertTags(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// InsertTagsWithCallback invokes the ots.InsertTags API asynchronously
+// api document: https://help.aliyun.com/api/ots/inserttags.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) InsertTagsWithCallback(request *InsertTagsRequest, callback func(response *InsertTagsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *InsertTagsResponse
+		var err error
+		defer close(result)
+		response, err = client.InsertTags(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// InsertTagsRequest is the request struct for api InsertTags
+type InsertTagsRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string               `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer     `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string               `position:"Query" name:"InstanceName"`
+	TagInfo         *[]InsertTagsTagInfo `position:"Query" name:"TagInfo"  type:"Repeated"`
+}
+
+// InsertTagsTagInfo is a repeated param struct in InsertTagsRequest
+type InsertTagsTagInfo struct {
+	TagKey   string `name:"TagKey"`
+	TagValue string `name:"TagValue"`
+}
+
+// InsertTagsResponse is the response struct for api InsertTags
+type InsertTagsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateInsertTagsRequest creates a request to invoke InsertTags API
+func CreateInsertTagsRequest() (request *InsertTagsRequest) {
+	request = &InsertTagsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "InsertTags", "ots", "openAPI")
+	return
+}
+
+// CreateInsertTagsResponse creates a response to parse from InsertTags response
+func CreateInsertTagsResponse() (response *InsertTagsResponse) {
+	response = &InsertTagsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/ots/list_cluster_type.go

@@ -0,0 +1,105 @@
+package ots
+
+//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"
+)
+
+// ListClusterType invokes the ots.ListClusterType API synchronously
+// api document: https://help.aliyun.com/api/ots/listclustertype.html
+func (client *Client) ListClusterType(request *ListClusterTypeRequest) (response *ListClusterTypeResponse, err error) {
+	response = CreateListClusterTypeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListClusterTypeWithChan invokes the ots.ListClusterType API asynchronously
+// api document: https://help.aliyun.com/api/ots/listclustertype.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListClusterTypeWithChan(request *ListClusterTypeRequest) (<-chan *ListClusterTypeResponse, <-chan error) {
+	responseChan := make(chan *ListClusterTypeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListClusterType(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListClusterTypeWithCallback invokes the ots.ListClusterType API asynchronously
+// api document: https://help.aliyun.com/api/ots/listclustertype.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListClusterTypeWithCallback(request *ListClusterTypeRequest, callback func(response *ListClusterTypeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListClusterTypeResponse
+		var err error
+		defer close(result)
+		response, err = client.ListClusterType(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListClusterTypeRequest is the request struct for api ListClusterType
+type ListClusterTypeRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+}
+
+// ListClusterTypeResponse is the response struct for api ListClusterType
+type ListClusterTypeResponse struct {
+	*responses.BaseResponse
+	RequestId        string           `json:"RequestId" xml:"RequestId"`
+	ClusterTypeInfos ClusterTypeInfos `json:"ClusterTypeInfos" xml:"ClusterTypeInfos"`
+}
+
+// CreateListClusterTypeRequest creates a request to invoke ListClusterType API
+func CreateListClusterTypeRequest() (request *ListClusterTypeRequest) {
+	request = &ListClusterTypeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "ListClusterType", "ots", "openAPI")
+	return
+}
+
+// CreateListClusterTypeResponse creates a response to parse from ListClusterType response
+func CreateListClusterTypeResponse() (response *ListClusterTypeResponse) {
+	response = &ListClusterTypeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 117 - 0
services/ots/list_instance.go

@@ -0,0 +1,117 @@
+package ots
+
+//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"
+)
+
+// ListInstance invokes the ots.ListInstance API synchronously
+// api document: https://help.aliyun.com/api/ots/listinstance.html
+func (client *Client) ListInstance(request *ListInstanceRequest) (response *ListInstanceResponse, err error) {
+	response = CreateListInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListInstanceWithChan invokes the ots.ListInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/listinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListInstanceWithChan(request *ListInstanceRequest) (<-chan *ListInstanceResponse, <-chan error) {
+	responseChan := make(chan *ListInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListInstanceWithCallback invokes the ots.ListInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/listinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListInstanceWithCallback(request *ListInstanceRequest, callback func(response *ListInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.ListInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListInstanceRequest is the request struct for api ListInstance
+type ListInstanceRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string                 `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer       `position:"Query" name:"ResourceOwnerId"`
+	PageSize        requests.Integer       `position:"Query" name:"PageSize"`
+	PageNum         requests.Integer       `position:"Query" name:"PageNum"`
+	TagInfo         *[]ListInstanceTagInfo `position:"Query" name:"TagInfo"  type:"Repeated"`
+}
+
+// ListInstanceTagInfo is a repeated param struct in ListInstanceRequest
+type ListInstanceTagInfo struct {
+	TagKey   string `name:"TagKey"`
+	TagValue string `name:"TagValue"`
+}
+
+// ListInstanceResponse is the response struct for api ListInstance
+type ListInstanceResponse struct {
+	*responses.BaseResponse
+	TotalCount    int           `json:"TotalCount" xml:"TotalCount"`
+	PageNum       int           `json:"PageNum" xml:"PageNum"`
+	PageSize      int           `json:"PageSize" xml:"PageSize"`
+	RequestId     string        `json:"RequestId" xml:"RequestId"`
+	InstanceInfos InstanceInfos `json:"InstanceInfos" xml:"InstanceInfos"`
+}
+
+// CreateListInstanceRequest creates a request to invoke ListInstance API
+func CreateListInstanceRequest() (request *ListInstanceRequest) {
+	request = &ListInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "ListInstance", "ots", "openAPI")
+	return
+}
+
+// CreateListInstanceResponse creates a response to parse from ListInstance response
+func CreateListInstanceResponse() (response *ListInstanceResponse) {
+	response = &ListInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 118 - 0
services/ots/list_tags.go

@@ -0,0 +1,118 @@
+package ots
+
+//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"
+)
+
+// ListTags invokes the ots.ListTags API synchronously
+// api document: https://help.aliyun.com/api/ots/listtags.html
+func (client *Client) ListTags(request *ListTagsRequest) (response *ListTagsResponse, err error) {
+	response = CreateListTagsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListTagsWithChan invokes the ots.ListTags API asynchronously
+// api document: https://help.aliyun.com/api/ots/listtags.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListTagsWithChan(request *ListTagsRequest) (<-chan *ListTagsResponse, <-chan error) {
+	responseChan := make(chan *ListTagsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListTags(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListTagsWithCallback invokes the ots.ListTags API asynchronously
+// api document: https://help.aliyun.com/api/ots/listtags.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListTagsWithCallback(request *ListTagsRequest, callback func(response *ListTagsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListTagsResponse
+		var err error
+		defer close(result)
+		response, err = client.ListTags(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListTagsRequest is the request struct for api ListTags
+type ListTagsRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string             `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer   `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string             `position:"Query" name:"InstanceName"`
+	PageSize        requests.Integer   `position:"Query" name:"PageSize"`
+	PageNum         requests.Integer   `position:"Query" name:"PageNum"`
+	TagInfo         *[]ListTagsTagInfo `position:"Query" name:"TagInfo"  type:"Repeated"`
+}
+
+// ListTagsTagInfo is a repeated param struct in ListTagsRequest
+type ListTagsTagInfo struct {
+	TagKey   string `name:"TagKey"`
+	TagValue string `name:"TagValue"`
+}
+
+// ListTagsResponse is the response struct for api ListTags
+type ListTagsResponse struct {
+	*responses.BaseResponse
+	TotalCount int                `json:"TotalCount" xml:"TotalCount"`
+	PageNum    int                `json:"PageNum" xml:"PageNum"`
+	PageSize   int                `json:"PageSize" xml:"PageSize"`
+	RequestId  string             `json:"RequestId" xml:"RequestId"`
+	TagInfos   TagInfosInListTags `json:"TagInfos" xml:"TagInfos"`
+}
+
+// CreateListTagsRequest creates a request to invoke ListTags API
+func CreateListTagsRequest() (request *ListTagsRequest) {
+	request = &ListTagsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "ListTags", "ots", "openAPI")
+	return
+}
+
+// CreateListTagsResponse creates a response to parse from ListTags response
+func CreateListTagsResponse() (response *ListTagsResponse) {
+	response = &ListTagsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 0 - 107
services/ots/list_trigger.go

@@ -1,107 +0,0 @@
-package ots
-
-//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 (
-	"encoding/json"
-	"fmt"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/errors"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
-)
-
-func (client *Client) ListTrigger(request *ListTriggerRequest) (response *ListTriggerResponse, err error) {
-	response = CreateListTriggerResponse()
-	err = client.DoAction(request, response)
-	return
-}
-
-func (client *Client) ListTriggerWithChan(request *ListTriggerRequest) (<-chan *ListTriggerResponse, <-chan error) {
-	responseChan := make(chan *ListTriggerResponse, 1)
-	errChan := make(chan error, 1)
-	err := client.AddAsyncTask(func() {
-		defer close(responseChan)
-		defer close(errChan)
-		response, err := client.ListTrigger(request)
-		responseChan <- response
-		errChan <- err
-	})
-	if err != nil {
-		errChan <- err
-		close(responseChan)
-		close(errChan)
-	}
-	return responseChan, errChan
-}
-
-func (client *Client) ListTriggerWithCallback(request *ListTriggerRequest, callback func(response *ListTriggerResponse, err error)) <-chan int {
-	result := make(chan int, 1)
-	err := client.AddAsyncTask(func() {
-		var response *ListTriggerResponse
-		var err error
-		defer close(result)
-		response, err = client.ListTrigger(request)
-		callback(response, err)
-		result <- 1
-	})
-	if err != nil {
-		defer close(result)
-		callback(nil, err)
-		result <- 0
-	}
-	return result
-}
-
-type ListTriggerRequest struct {
-	*requests.RoaRequest
-	InstanceName string `position:"Path" name:"InstanceName"`
-	ApiVersion   string `position:"Path" name:"ApiVersion"`
-	TableName    string `position:"Path" name:"TableName"`
-}
-
-type ListTriggerResponse struct {
-	*responses.BaseResponse
-}
-
-func (resp *ListTriggerResponse) GetBody() (body *ListTriggerResponseBody, err error) {
-	body = &ListTriggerResponseBody{}
-	bodyBuf := resp.GetHttpContentBytes()
-	err = json.Unmarshal(bodyBuf, body)
-	if err != nil {
-		errorMsg := fmt.Sprintf(CanNotUnmarshalRequestBodyMessage, string(bodyBuf))
-		return nil, errors.NewClientError(CanNotUnmarshalRequestBodyCode, errorMsg, err)
-	}
-	return
-}
-
-func NewListTriggerRequest(domain, instance, table string) (request *ListTriggerRequest) {
-	request = &ListTriggerRequest{
-		RoaRequest:   &requests.RoaRequest{},
-		InstanceName: instance,
-		TableName:    table,
-		ApiVersion:   ApiVersion,
-	}
-	request.InitWithApiInfo("Ots", "2017-11-11", "ListTrigger", "/[ApiVersion]/instance/[InstanceName]/table/[TableName]/trigger", "", "")
-	request.Domain = domain
-	return
-}
-
-func CreateListTriggerResponse() (response *ListTriggerResponse) {
-	response = &ListTriggerResponse{
-		BaseResponse: &responses.BaseResponse{},
-	}
-	return
-}

+ 112 - 0
services/ots/list_vpc_info_by_instance.go

@@ -0,0 +1,112 @@
+package ots
+
+//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"
+)
+
+// ListVpcInfoByInstance invokes the ots.ListVpcInfoByInstance API synchronously
+// api document: https://help.aliyun.com/api/ots/listvpcinfobyinstance.html
+func (client *Client) ListVpcInfoByInstance(request *ListVpcInfoByInstanceRequest) (response *ListVpcInfoByInstanceResponse, err error) {
+	response = CreateListVpcInfoByInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListVpcInfoByInstanceWithChan invokes the ots.ListVpcInfoByInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/listvpcinfobyinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListVpcInfoByInstanceWithChan(request *ListVpcInfoByInstanceRequest) (<-chan *ListVpcInfoByInstanceResponse, <-chan error) {
+	responseChan := make(chan *ListVpcInfoByInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListVpcInfoByInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListVpcInfoByInstanceWithCallback invokes the ots.ListVpcInfoByInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/listvpcinfobyinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListVpcInfoByInstanceWithCallback(request *ListVpcInfoByInstanceRequest, callback func(response *ListVpcInfoByInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListVpcInfoByInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.ListVpcInfoByInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListVpcInfoByInstanceRequest is the request struct for api ListVpcInfoByInstance
+type ListVpcInfoByInstanceRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string           `position:"Query" name:"InstanceName"`
+	PageSize        requests.Integer `position:"Query" name:"PageSize"`
+	PageNum         requests.Integer `position:"Query" name:"PageNum"`
+}
+
+// ListVpcInfoByInstanceResponse is the response struct for api ListVpcInfoByInstance
+type ListVpcInfoByInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId    string                          `json:"RequestId" xml:"RequestId"`
+	InstanceName string                          `json:"InstanceName" xml:"InstanceName"`
+	TotalCount   int                             `json:"TotalCount" xml:"TotalCount"`
+	PageNum      int                             `json:"PageNum" xml:"PageNum"`
+	PageSize     int                             `json:"PageSize" xml:"PageSize"`
+	VpcInfos     VpcInfosInListVpcInfoByInstance `json:"VpcInfos" xml:"VpcInfos"`
+}
+
+// CreateListVpcInfoByInstanceRequest creates a request to invoke ListVpcInfoByInstance API
+func CreateListVpcInfoByInstanceRequest() (request *ListVpcInfoByInstanceRequest) {
+	request = &ListVpcInfoByInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "ListVpcInfoByInstance", "ots", "openAPI")
+	return
+}
+
+// CreateListVpcInfoByInstanceResponse creates a response to parse from ListVpcInfoByInstance response
+func CreateListVpcInfoByInstanceResponse() (response *ListVpcInfoByInstanceResponse) {
+	response = &ListVpcInfoByInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 119 - 0
services/ots/list_vpc_info_by_vpc.go

@@ -0,0 +1,119 @@
+package ots
+
+//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"
+)
+
+// ListVpcInfoByVpc invokes the ots.ListVpcInfoByVpc API synchronously
+// api document: https://help.aliyun.com/api/ots/listvpcinfobyvpc.html
+func (client *Client) ListVpcInfoByVpc(request *ListVpcInfoByVpcRequest) (response *ListVpcInfoByVpcResponse, err error) {
+	response = CreateListVpcInfoByVpcResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListVpcInfoByVpcWithChan invokes the ots.ListVpcInfoByVpc API asynchronously
+// api document: https://help.aliyun.com/api/ots/listvpcinfobyvpc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListVpcInfoByVpcWithChan(request *ListVpcInfoByVpcRequest) (<-chan *ListVpcInfoByVpcResponse, <-chan error) {
+	responseChan := make(chan *ListVpcInfoByVpcResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListVpcInfoByVpc(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListVpcInfoByVpcWithCallback invokes the ots.ListVpcInfoByVpc API asynchronously
+// api document: https://help.aliyun.com/api/ots/listvpcinfobyvpc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListVpcInfoByVpcWithCallback(request *ListVpcInfoByVpcRequest, callback func(response *ListVpcInfoByVpcResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListVpcInfoByVpcResponse
+		var err error
+		defer close(result)
+		response, err = client.ListVpcInfoByVpc(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListVpcInfoByVpcRequest is the request struct for api ListVpcInfoByVpc
+type ListVpcInfoByVpcRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string                     `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer           `position:"Query" name:"ResourceOwnerId"`
+	VpcId           string                     `position:"Query" name:"VpcId"`
+	PageSize        requests.Integer           `position:"Query" name:"PageSize"`
+	PageNum         requests.Integer           `position:"Query" name:"PageNum"`
+	TagInfo         *[]ListVpcInfoByVpcTagInfo `position:"Query" name:"TagInfo"  type:"Repeated"`
+}
+
+// ListVpcInfoByVpcTagInfo is a repeated param struct in ListVpcInfoByVpcRequest
+type ListVpcInfoByVpcTagInfo struct {
+	TagKey   string `name:"TagKey"`
+	TagValue string `name:"TagValue"`
+}
+
+// ListVpcInfoByVpcResponse is the response struct for api ListVpcInfoByVpc
+type ListVpcInfoByVpcResponse struct {
+	*responses.BaseResponse
+	TotalCount int                        `json:"TotalCount" xml:"TotalCount"`
+	PageNum    int                        `json:"PageNum" xml:"PageNum"`
+	PageSize   int                        `json:"PageSize" xml:"PageSize"`
+	RequestId  string                     `json:"RequestId" xml:"RequestId"`
+	VpcId      string                     `json:"VpcId" xml:"VpcId"`
+	VpcInfos   VpcInfosInListVpcInfoByVpc `json:"VpcInfos" xml:"VpcInfos"`
+}
+
+// CreateListVpcInfoByVpcRequest creates a request to invoke ListVpcInfoByVpc API
+func CreateListVpcInfoByVpcRequest() (request *ListVpcInfoByVpcRequest) {
+	request = &ListVpcInfoByVpcRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "ListVpcInfoByVpc", "ots", "openAPI")
+	return
+}
+
+// CreateListVpcInfoByVpcResponse creates a response to parse from ListVpcInfoByVpc response
+func CreateListVpcInfoByVpcResponse() (response *ListVpcInfoByVpcResponse) {
+	response = &ListVpcInfoByVpcResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 0 - 57
services/ots/model.go

@@ -1,57 +0,0 @@
-package ots
-
-//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.
-
-const ApiVersion = "v1"
-
-type CreateTriggerRequestBody struct {
-	RoleArn     string
-	TriggerName string
-	UdfInfo     *UdfInfo
-}
-
-type TriggerResponseBase struct {
-	Code    string
-	Message string
-}
-
-type CreateTriggerResponseBody struct {
-	TriggerResponseBase
-	Etag string
-}
-
-type GetTriggerResponseBody struct {
-	TriggerResponseBase
-	Trigger *TriggerInfo
-}
-
-type ListTriggerResponseBody struct {
-	TriggerResponseBase
-	Triggers []*TriggerInfo
-}
-
-type UdfInfo struct {
-	ServiceName  string
-	FunctionName string
-}
-
-type TriggerInfo struct {
-	TriggerName  string
-	AssumeRole   string
-	CreateTime   int64
-	InstanceName string
-	DataTable    string
-	UdfInfo      *UdfInfo
-	Etag         string
-	TimerId      string
-}

+ 0 - 177
services/ots/sample/sample.go

@@ -1,177 +0,0 @@
-package main
-
-import (
-	"fmt"
-	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/errors"
-	"github.com/aliyun/alibaba-cloud-sdk-go/services/ots"
-	"log"
-	"os"
-)
-
-var otsDomainTmpl = "ots.%s.aliyuncs.com"
-
-func main() {
-	akId := os.Getenv("ACCESSKEY_ID")
-	akSec := "ACCESSKEY_SECRET"
-
-	testInstance := "existInstance"
-	testTable := "StreamTable"
-
-	adapter, err := NewOTSAdapter("cn-beijing", akId, akSec)
-	if err != nil {
-		log.Fatal(err)
-	}
-
-	// ERROR_ACCESS_DENIED
-
-	// ... ignore, return when ram checking permission failed for sub account
-
-	// ERROR_TRIGGER_NOT_EXIST
-	info, err := adapter.ReadTrigger(testInstance, testTable, "not-exist-trigger")
-	if err == nil {
-		log.Fatal("Unexpected trigger info:", info)
-	}
-	if ok, popErr := parsePopError(err); ok {
-		log.Println("http code:", popErr.HttpStatus())
-		log.Println("error code:", popErr.ErrorCode())
-		log.Println("error message:", popErr.Message())
-	} else {
-		log.Println("Unexpected error:", err)
-	}
-
-	err = adapter.DeleteTrigger(testInstance, testTable, "not-exist-trigger")
-	if err == nil {
-		log.Fatal("Unexpected delete succeed")
-	}
-	if ok, popErr := parsePopError(err); ok {
-		log.Println("http code:", popErr.HttpStatus())
-		log.Println("error code:", popErr.ErrorCode())
-		log.Println("error message:", popErr.Message())
-	} else {
-		log.Println("Unexpected error:", err)
-	}
-
-	// ERROR_INVALID_ARGUMENT
-	info, err = adapter.ReadTrigger("notExistInstance", testTable, "not-exist-trigger")
-	if err == nil {
-		log.Fatal("Unexpected trigger info:", info)
-	}
-	if ok, popErr := parsePopError(err); ok {
-		log.Println("http code:", popErr.HttpStatus())
-		log.Println("error code:", popErr.ErrorCode())
-		log.Println("error message:", popErr.Message())
-	} else {
-		log.Println("Unexpected error:", err)
-	}
-
-	// CRUD
-	triggerMeta := &ots.CreateTriggerRequestBody{
-		TriggerName: "testTrigger",
-		RoleArn:     "acs:ram::1158963556308590:role/aliyuntablestorestreamnotificationrole",
-		UdfInfo: &ots.UdfInfo{
-			ServiceName:  "fcService",
-			FunctionName: "fcFunction",
-		},
-	}
-	// CREATE
-	newTrigger, err := adapter.CreateTrigger(testInstance, testTable, triggerMeta)
-	if err != nil {
-		log.Fatal("Create trigger failed:", err)
-	}
-	log.Println("new trigger id:", newTrigger.Etag)
-
-	// READ
-	info, err = adapter.ReadTrigger(testInstance, testTable, triggerMeta.TriggerName)
-	if err != nil {
-		log.Fatal("Read trigger failed:", err)
-	}
-	log.Println("read trigger info:", info.Trigger)
-
-	// UPDATE
-	// not support update
-
-	// ERROR_RESOURCE_CONFLICT
-	conflictMeta := &ots.CreateTriggerRequestBody{
-		TriggerName: "testTrigger1",
-		RoleArn:     "acs:ram::1158963556308590:role/aliyuntablestorestreamnotificationrole",
-		UdfInfo: &ots.UdfInfo{
-			ServiceName:  "fcService",
-			FunctionName: "fcFunction",
-		},
-	}
-	conflictTrigger, err := adapter.CreateTrigger(testInstance, testTable, conflictMeta)
-	if err == nil {
-		log.Fatal("Uexpected trigger:", conflictTrigger)
-	}
-	if ok, popErr := parsePopError(err); ok {
-		log.Println("http code:", popErr.HttpStatus())
-		log.Println("error code:", popErr.ErrorCode())
-		log.Println("error message:", popErr.Message())
-	} else {
-		log.Println("Unexpected error:", err)
-	}
-
-	// DELETE
-	err = adapter.DeleteTrigger(testInstance, testTable, triggerMeta.TriggerName)
-	if err != nil {
-		log.Fatal("Delete trigger failed:", err)
-	}
-	log.Println("CRUD done")
-}
-
-type OTSAdapter struct {
-	client *ots.Client
-	domain string
-}
-
-func NewOTSAdapter(regionId string, accessKeyId, accessKeySecret string) (*OTSAdapter, error) {
-	client, err := ots.NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret)
-	if err != nil {
-		return nil, err
-	}
-	return &OTSAdapter{client: client, domain: fmt.Sprintf(otsDomainTmpl, regionId)}, nil
-}
-
-func (o *OTSAdapter) CreateTrigger(instanceName, tableName string, triggerInfo *ots.CreateTriggerRequestBody) (resp *ots.CreateTriggerResponseBody, err error) {
-	req, err := ots.NewCreateTriggerRequest(o.domain, instanceName, tableName, triggerInfo)
-	if err != nil {
-		return
-	}
-	popResp, err := o.client.CreateTrigger(req)
-	if err != nil {
-		return
-	}
-	resp, err = popResp.GetBody()
-	return
-}
-
-func (o *OTSAdapter) ReadTrigger(instanceName, tableName, triggerName string) (triggerInfo *ots.GetTriggerResponseBody, err error) {
-	popResp, err := o.client.GetTrigger(ots.NewGetTriggerRequest(o.domain, instanceName, tableName, triggerName))
-	if err != nil {
-		return
-	}
-	triggerInfo, err = popResp.GetBody()
-	return
-}
-
-func (o *OTSAdapter) DeleteTrigger(instanceName, tableName, triggerName string) error {
-	_, err := o.client.DeleteTrigger(ots.NewDeleteTriggerRequest(o.domain, instanceName, tableName, triggerName))
-	return err
-}
-
-// fc应该用不到这个接口
-func (o *OTSAdapter) ListTriggers(instanceName, tableName string) (triggers *ots.ListTriggerResponseBody, err error) {
-	popResp, err := o.client.ListTrigger(ots.NewListTriggerRequest(o.domain, instanceName, tableName))
-	if err != nil {
-		return
-	}
-	triggers, err = popResp.GetBody()
-	return
-}
-
-func parsePopError(err error) (succeed bool, error *errors.ServerError) {
-	if sdkErr, ok := err.(*errors.ServerError); ok {
-		return true, sdkErr
-	}
-	return false, nil
-}

+ 21 - 0
services/ots/struct_cluster_type_infos.go

@@ -0,0 +1,21 @@
+package ots
+
+//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.
+
+// ClusterTypeInfos is a nested struct in ots response
+type ClusterTypeInfos struct {
+	ClusterType []string `json:"ClusterType" xml:"ClusterType"`
+}

+ 32 - 0
services/ots/struct_instance_info.go

@@ -0,0 +1,32 @@
+package ots
+
+//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.
+
+// InstanceInfo is a nested struct in ots response
+type InstanceInfo struct {
+	Status        int                   `json:"Status" xml:"Status"`
+	WriteCapacity int                   `json:"WriteCapacity" xml:"WriteCapacity"`
+	ReadCapacity  int                   `json:"ReadCapacity" xml:"ReadCapacity"`
+	ClusterType   string                `json:"ClusterType" xml:"ClusterType"`
+	Timestamp     string                `json:"Timestamp" xml:"Timestamp"`
+	UserId        string                `json:"UserId" xml:"UserId"`
+	InstanceName  string                `json:"InstanceName" xml:"InstanceName"`
+	CreateTime    string                `json:"CreateTime" xml:"CreateTime"`
+	Network       string                `json:"Network" xml:"Network"`
+	Description   string                `json:"Description" xml:"Description"`
+	Quota         Quota                 `json:"Quota" xml:"Quota"`
+	TagInfos      TagInfosInGetInstance `json:"TagInfos" xml:"TagInfos"`
+}

+ 21 - 0
services/ots/struct_instance_infos.go

@@ -0,0 +1,21 @@
+package ots
+
+//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.
+
+// InstanceInfos is a nested struct in ots response
+type InstanceInfos struct {
+	InstanceInfo []InstanceInfo `json:"InstanceInfo" xml:"InstanceInfo"`
+}

+ 7 - 7
services/ots/error.go → services/ots/struct_quota.go

@@ -11,11 +11,11 @@ package ots
 //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.
 
-const (
-	CanNotMarshalRequestBodyCode    = "SDK.CanNotMarshalRequestBody"
-	CanNotMarshalRequestBodyMessage = "Can not marshal body(param = %v)"
-
-	CanNotUnmarshalRequestBodyCode    = "SDK.CanNotUnmarshalRequestBody"
-	CanNotUnmarshalRequestBodyMessage = "Can not unmarshal body(param = %s)"
-)
+// Quota is a nested struct in ots response
+type Quota struct {
+	EntityQuota int `json:"EntityQuota" xml:"EntityQuota"`
+}

+ 22 - 0
services/ots/struct_tag_info.go

@@ -0,0 +1,22 @@
+package ots
+
+//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.
+
+// TagInfo is a nested struct in ots response
+type TagInfo struct {
+	TagValue string `json:"TagValue" xml:"TagValue"`
+	TagKey   string `json:"TagKey" xml:"TagKey"`
+}

+ 21 - 0
services/ots/struct_tag_infos_in_get_instance.go

@@ -0,0 +1,21 @@
+package ots
+
+//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.
+
+// TagInfosInGetInstance is a nested struct in ots response
+type TagInfosInGetInstance struct {
+	TagInfo []TagInfo `json:"TagInfo" xml:"TagInfo"`
+}

+ 21 - 0
services/ots/struct_tag_infos_in_list_tags.go

@@ -0,0 +1,21 @@
+package ots
+
+//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.
+
+// TagInfosInListTags is a nested struct in ots response
+type TagInfosInListTags struct {
+	TagInfo []TagInfo `json:"TagInfo" xml:"TagInfo"`
+}

+ 26 - 0
services/ots/struct_vpc_info.go

@@ -0,0 +1,26 @@
+package ots
+
+//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.
+
+// VpcInfo is a nested struct in ots response
+type VpcInfo struct {
+	Domain          string `json:"Domain" xml:"Domain"`
+	Endpoint        string `json:"Endpoint" xml:"Endpoint"`
+	RegionNo        string `json:"RegionNo" xml:"RegionNo"`
+	InstanceName    string `json:"InstanceName" xml:"InstanceName"`
+	InstanceVpcName string `json:"InstanceVpcName" xml:"InstanceVpcName"`
+	VpcId           string `json:"VpcId" xml:"VpcId"`
+}

+ 21 - 0
services/ots/struct_vpc_infos_in_list_vpc_info_by_instance.go

@@ -0,0 +1,21 @@
+package ots
+
+//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.
+
+// VpcInfosInListVpcInfoByInstance is a nested struct in ots response
+type VpcInfosInListVpcInfoByInstance struct {
+	VpcInfo []VpcInfo `json:"VpcInfo" xml:"VpcInfo"`
+}

+ 21 - 0
services/ots/struct_vpc_infos_in_list_vpc_info_by_vpc.go

@@ -0,0 +1,21 @@
+package ots
+
+//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.
+
+// VpcInfosInListVpcInfoByVpc is a nested struct in ots response
+type VpcInfosInListVpcInfoByVpc struct {
+	VpcInfo []VpcInfo `json:"VpcInfo" xml:"VpcInfo"`
+}

+ 107 - 0
services/ots/unbind_instance2_vpc.go

@@ -0,0 +1,107 @@
+package ots
+
+//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"
+)
+
+// UnbindInstance2Vpc invokes the ots.UnbindInstance2Vpc API synchronously
+// api document: https://help.aliyun.com/api/ots/unbindinstance2vpc.html
+func (client *Client) UnbindInstance2Vpc(request *UnbindInstance2VpcRequest) (response *UnbindInstance2VpcResponse, err error) {
+	response = CreateUnbindInstance2VpcResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// UnbindInstance2VpcWithChan invokes the ots.UnbindInstance2Vpc API asynchronously
+// api document: https://help.aliyun.com/api/ots/unbindinstance2vpc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UnbindInstance2VpcWithChan(request *UnbindInstance2VpcRequest) (<-chan *UnbindInstance2VpcResponse, <-chan error) {
+	responseChan := make(chan *UnbindInstance2VpcResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.UnbindInstance2Vpc(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// UnbindInstance2VpcWithCallback invokes the ots.UnbindInstance2Vpc API asynchronously
+// api document: https://help.aliyun.com/api/ots/unbindinstance2vpc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UnbindInstance2VpcWithCallback(request *UnbindInstance2VpcRequest, callback func(response *UnbindInstance2VpcResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *UnbindInstance2VpcResponse
+		var err error
+		defer close(result)
+		response, err = client.UnbindInstance2Vpc(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// UnbindInstance2VpcRequest is the request struct for api UnbindInstance2Vpc
+type UnbindInstance2VpcRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	InstanceVpcName string           `position:"Query" name:"InstanceVpcName"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string           `position:"Query" name:"InstanceName"`
+	RegionNo        string           `position:"Query" name:"RegionNo"`
+}
+
+// UnbindInstance2VpcResponse is the response struct for api UnbindInstance2Vpc
+type UnbindInstance2VpcResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateUnbindInstance2VpcRequest creates a request to invoke UnbindInstance2Vpc API
+func CreateUnbindInstance2VpcRequest() (request *UnbindInstance2VpcRequest) {
+	request = &UnbindInstance2VpcRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "UnbindInstance2Vpc", "ots", "openAPI")
+	return
+}
+
+// CreateUnbindInstance2VpcResponse creates a response to parse from UnbindInstance2Vpc response
+func CreateUnbindInstance2VpcResponse() (response *UnbindInstance2VpcResponse) {
+	response = &UnbindInstance2VpcResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/ots/update_instance.go

@@ -0,0 +1,106 @@
+package ots
+
+//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"
+)
+
+// UpdateInstance invokes the ots.UpdateInstance API synchronously
+// api document: https://help.aliyun.com/api/ots/updateinstance.html
+func (client *Client) UpdateInstance(request *UpdateInstanceRequest) (response *UpdateInstanceResponse, err error) {
+	response = CreateUpdateInstanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// UpdateInstanceWithChan invokes the ots.UpdateInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/updateinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UpdateInstanceWithChan(request *UpdateInstanceRequest) (<-chan *UpdateInstanceResponse, <-chan error) {
+	responseChan := make(chan *UpdateInstanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.UpdateInstance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// UpdateInstanceWithCallback invokes the ots.UpdateInstance API asynchronously
+// api document: https://help.aliyun.com/api/ots/updateinstance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UpdateInstanceWithCallback(request *UpdateInstanceRequest, callback func(response *UpdateInstanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *UpdateInstanceResponse
+		var err error
+		defer close(result)
+		response, err = client.UpdateInstance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// UpdateInstanceRequest is the request struct for api UpdateInstance
+type UpdateInstanceRequest struct {
+	*requests.RpcRequest
+	AccessKeyId     string           `position:"Query" name:"access_key_id"`
+	ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceName    string           `position:"Query" name:"InstanceName"`
+	Network         string           `position:"Query" name:"Network"`
+}
+
+// UpdateInstanceResponse is the response struct for api UpdateInstance
+type UpdateInstanceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateUpdateInstanceRequest creates a request to invoke UpdateInstance API
+func CreateUpdateInstanceRequest() (request *UpdateInstanceRequest) {
+	request = &UpdateInstanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ots", "2016-06-20", "UpdateInstance", "ots", "openAPI")
+	return
+}
+
+// CreateUpdateInstanceResponse creates a response to parse from UpdateInstance response
+func CreateUpdateInstanceResponse() (response *UpdateInstanceResponse) {
+	response = &UpdateInstanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}