
com.tencentcloudapi.cme.v20191029.models.GrantResourceAuthorizationRequest Maven / Gradle / Ivy
/*
* Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* 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.
*/
package com.tencentcloudapi.cme.v20191029.models;
import com.tencentcloudapi.common.AbstractModel;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Expose;
import java.util.HashMap;
public class GrantResourceAuthorizationRequest extends AbstractModel{
/**
* 平台 Id,指定访问的平台。关于平台概念,请参见文档 [平台](https://cloud.tencent.com/document/product/1156/43767)。
*/
@SerializedName("Platform")
@Expose
private String Platform;
/**
* 资源归属者,个人或者团队。
*/
@SerializedName("Owner")
@Expose
private Entity Owner;
/**
* 被授权资源。
*/
@SerializedName("Resources")
@Expose
private Resource [] Resources;
/**
* 被授权目标,个人或者团队。
*/
@SerializedName("Authorizees")
@Expose
private Entity [] Authorizees;
/**
* 详细授权值。 取值有:
R:可读,可以浏览媒体,但不能使用该媒体文件(将其添加到 Project),或复制到自己的媒资库中
X:可用,可以使用该素材(将其添加到 Project),但不能将其复制到自己的媒资库中,意味着被授权者无法将该资源进一步扩散给其他个人或团队。
C:可复制,既可以使用该素材(将其添加到 Project),也可以将其复制到自己的媒资库中。
W:可修改、删除媒资。
*/
@SerializedName("Permissions")
@Expose
private String [] Permissions;
/**
* 操作者。如不填,默认为 `cmeid_system`,表示平台管理员操作,可以授权任意归属者的资源。如果指定操作者,则操作者必须对资源拥有写权限。
*/
@SerializedName("Operator")
@Expose
private String Operator;
/**
* Get 平台 Id,指定访问的平台。关于平台概念,请参见文档 [平台](https://cloud.tencent.com/document/product/1156/43767)。
* @return Platform 平台 Id,指定访问的平台。关于平台概念,请参见文档 [平台](https://cloud.tencent.com/document/product/1156/43767)。
*/
public String getPlatform() {
return this.Platform;
}
/**
* Set 平台 Id,指定访问的平台。关于平台概念,请参见文档 [平台](https://cloud.tencent.com/document/product/1156/43767)。
* @param Platform 平台 Id,指定访问的平台。关于平台概念,请参见文档 [平台](https://cloud.tencent.com/document/product/1156/43767)。
*/
public void setPlatform(String Platform) {
this.Platform = Platform;
}
/**
* Get 资源归属者,个人或者团队。
* @return Owner 资源归属者,个人或者团队。
*/
public Entity getOwner() {
return this.Owner;
}
/**
* Set 资源归属者,个人或者团队。
* @param Owner 资源归属者,个人或者团队。
*/
public void setOwner(Entity Owner) {
this.Owner = Owner;
}
/**
* Get 被授权资源。
* @return Resources 被授权资源。
*/
public Resource [] getResources() {
return this.Resources;
}
/**
* Set 被授权资源。
* @param Resources 被授权资源。
*/
public void setResources(Resource [] Resources) {
this.Resources = Resources;
}
/**
* Get 被授权目标,个人或者团队。
* @return Authorizees 被授权目标,个人或者团队。
*/
public Entity [] getAuthorizees() {
return this.Authorizees;
}
/**
* Set 被授权目标,个人或者团队。
* @param Authorizees 被授权目标,个人或者团队。
*/
public void setAuthorizees(Entity [] Authorizees) {
this.Authorizees = Authorizees;
}
/**
* Get 详细授权值。 取值有:
R:可读,可以浏览媒体,但不能使用该媒体文件(将其添加到 Project),或复制到自己的媒资库中
X:可用,可以使用该素材(将其添加到 Project),但不能将其复制到自己的媒资库中,意味着被授权者无法将该资源进一步扩散给其他个人或团队。
C:可复制,既可以使用该素材(将其添加到 Project),也可以将其复制到自己的媒资库中。
W:可修改、删除媒资。
* @return Permissions 详细授权值。 取值有:
R:可读,可以浏览媒体,但不能使用该媒体文件(将其添加到 Project),或复制到自己的媒资库中
X:可用,可以使用该素材(将其添加到 Project),但不能将其复制到自己的媒资库中,意味着被授权者无法将该资源进一步扩散给其他个人或团队。
C:可复制,既可以使用该素材(将其添加到 Project),也可以将其复制到自己的媒资库中。
W:可修改、删除媒资。
*/
public String [] getPermissions() {
return this.Permissions;
}
/**
* Set 详细授权值。 取值有:
R:可读,可以浏览媒体,但不能使用该媒体文件(将其添加到 Project),或复制到自己的媒资库中
X:可用,可以使用该素材(将其添加到 Project),但不能将其复制到自己的媒资库中,意味着被授权者无法将该资源进一步扩散给其他个人或团队。
C:可复制,既可以使用该素材(将其添加到 Project),也可以将其复制到自己的媒资库中。
W:可修改、删除媒资。
* @param Permissions 详细授权值。 取值有:
R:可读,可以浏览媒体,但不能使用该媒体文件(将其添加到 Project),或复制到自己的媒资库中
X:可用,可以使用该素材(将其添加到 Project),但不能将其复制到自己的媒资库中,意味着被授权者无法将该资源进一步扩散给其他个人或团队。
C:可复制,既可以使用该素材(将其添加到 Project),也可以将其复制到自己的媒资库中。
W:可修改、删除媒资。
*/
public void setPermissions(String [] Permissions) {
this.Permissions = Permissions;
}
/**
* Get 操作者。如不填,默认为 `cmeid_system`,表示平台管理员操作,可以授权任意归属者的资源。如果指定操作者,则操作者必须对资源拥有写权限。
* @return Operator 操作者。如不填,默认为 `cmeid_system`,表示平台管理员操作,可以授权任意归属者的资源。如果指定操作者,则操作者必须对资源拥有写权限。
*/
public String getOperator() {
return this.Operator;
}
/**
* Set 操作者。如不填,默认为 `cmeid_system`,表示平台管理员操作,可以授权任意归属者的资源。如果指定操作者,则操作者必须对资源拥有写权限。
* @param Operator 操作者。如不填,默认为 `cmeid_system`,表示平台管理员操作,可以授权任意归属者的资源。如果指定操作者,则操作者必须对资源拥有写权限。
*/
public void setOperator(String Operator) {
this.Operator = Operator;
}
public GrantResourceAuthorizationRequest() {
}
/**
* NOTE: Any ambiguous key set via .set("AnyKey", "value") will be a shallow copy,
* and any explicit key, i.e Foo, set via .setFoo("value") will be a deep copy.
*/
public GrantResourceAuthorizationRequest(GrantResourceAuthorizationRequest source) {
if (source.Platform != null) {
this.Platform = new String(source.Platform);
}
if (source.Owner != null) {
this.Owner = new Entity(source.Owner);
}
if (source.Resources != null) {
this.Resources = new Resource[source.Resources.length];
for (int i = 0; i < source.Resources.length; i++) {
this.Resources[i] = new Resource(source.Resources[i]);
}
}
if (source.Authorizees != null) {
this.Authorizees = new Entity[source.Authorizees.length];
for (int i = 0; i < source.Authorizees.length; i++) {
this.Authorizees[i] = new Entity(source.Authorizees[i]);
}
}
if (source.Permissions != null) {
this.Permissions = new String[source.Permissions.length];
for (int i = 0; i < source.Permissions.length; i++) {
this.Permissions[i] = new String(source.Permissions[i]);
}
}
if (source.Operator != null) {
this.Operator = new String(source.Operator);
}
}
/**
* Internal implementation, normal users should not use it.
*/
public void toMap(HashMap map, String prefix) {
this.setParamSimple(map, prefix + "Platform", this.Platform);
this.setParamObj(map, prefix + "Owner.", this.Owner);
this.setParamArrayObj(map, prefix + "Resources.", this.Resources);
this.setParamArrayObj(map, prefix + "Authorizees.", this.Authorizees);
this.setParamArraySimple(map, prefix + "Permissions.", this.Permissions);
this.setParamSimple(map, prefix + "Operator", this.Operator);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy