All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aliyun.ros.cdk.iot.ProductProps Maven / Gradle / Ivy

Go to download

Aliyun SDK Copyright (C) Alibaba Cloud Computing All rights reserved. http://www.aliyun.com

There is a newer version: 1.5.0
Show newest version
package com.aliyun.ros.cdk.iot;

/**
 * Properties for defining a ALIYUN::IOT::Product.
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.85.0 (build 08ee592)", date = "2023-09-15T09:57:26.684Z")
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.iot.$Module.class, fqn = "@alicloud/ros-cdk-iot.ProductProps")
@software.amazon.jsii.Jsii.Proxy(ProductProps.Jsii$Proxy.class)
public interface ProductProps extends software.amazon.jsii.JsiiSerializable {

    /**
     * Property nodeType: The node type of the product.
     * 

* Values: * 0: Device. A device cannot be mounted with sub-devices. It can connect to IoT Platform * either directly or as a sub-device of a gateway. * 1: Gateway. A gateway can be mounted with sub-devices. It can manage sub-devices, maintain * the topological relationships with sub-devices, and synchronize the topological relationships * to IoT Platform. */ @org.jetbrains.annotations.NotNull java.lang.Object getNodeType(); /** * Property productName: The name of the product. *

* A product name can be 4 to 30 characters in length and can * contain Chinese characters, English letters, digits, and underscores (_). * Note A product name must be unique in an account. */ @org.jetbrains.annotations.NotNull java.lang.Object getProductName(); /** * Property aliyunCommodityCode: The edition of the product that you want to create. *

* There are two options: * iothub_senior: Pro Edition. * iothub: Basic Edition. * If you do not input this parameter, the default value is used, which is iothub (Basic * Edition). */ default @org.jetbrains.annotations.Nullable java.lang.Object getAliyunCommodityCode() { return null; } /** * Property authType: Authentication device to access the Internet of Things platform under the product. *

* Optional: * secret: using a device key for device authentication. * Details can be found MQTT-TCP connection communication. * id2: Use things device authentication ID. * x509: X.509 certificates using the device for device authentication. * The use of X.509 certificates device side configuration instructions, see Using X.509 certificate authentication. * If this parameter is passed, the default value is secret. */ default @org.jetbrains.annotations.Nullable java.lang.Object getAuthType() { return null; } /** * Property categoryKey: Identifier Product category. *

* If you pass this parameter, the product will be created using the object model specified category; not passed, the standard model is not used in any category. * Call ListThingTemplates, view of things platform predefined category information from the returned results, get the value of CategoryKey. */ default @org.jetbrains.annotations.Nullable java.lang.Object getCategoryKey() { return null; } /** * Property dataFormat: You must specify this parameter if the value of AliyunCommodityCode is iothub_senior. *

* This parameter is only available and required when you create a Pro Edition product. * Options: * 0: Do not parse/Custom. * 1: Alink JSON. */ default @org.jetbrains.annotations.Nullable java.lang.Object getDataFormat() { return null; } /** * Property description: A description of the product. *

* The description can be a maximum of 100 characters in * length. */ default @org.jetbrains.annotations.Nullable java.lang.Object getDescription() { return null; } /** * Property id2: Whether ID2 certification. *

* Optional values: * true: the opening of ID2 certification. * false: do not open ID2 certification. * Do not pass this parameter, the default is not opened. * Explanation * Only 2 East China (Shanghai) regional support ID2 authentication. * If this parameter value is set to true, but passed AuthType parameter value is not id2, the system will AuthType parameter values prevail. */ default @org.jetbrains.annotations.Nullable java.lang.Object getId2() { return null; } /** * Property iotInstanceId: Public instance does not pass this parameter; *

* instance that you need to buy the incoming instance ID. */ default @org.jetbrains.annotations.Nullable java.lang.Object getIotInstanceId() { return null; } /** * Property joinPermissionId: LoRaWAN network credential ID. *

* When networking mode NetType chosen LORA, the necessary parameters. * Please call QueryLoRaJoinPermissions query JoinPermissionId network credentials LoRaWAN under your account. * If you do not LoRaWAN network credentials, visit the network management platform to create things together. */ default @org.jetbrains.annotations.Nullable java.lang.Object getJoinPermissionId() { return null; } /** * Property netType: Networking mode. *

* Set this parameter only if you are creating a product whose devices directly connect * to IoT Platform. * Options: * WIFI * CELLULAR * ETHERNET * OTHER * The default value is WIFI. */ default @org.jetbrains.annotations.Nullable java.lang.Object getNetType() { return null; } /** * Property protocolType: The protocol that devices of this product use to connect to gateways. *

* Set this parameter only if you are creating a product whose devices will be connected * to gateways. * Options: * modbus: Modbus. * opc-ua: OPC UA. * customize: Customized protocol. * ble: BLE. * zigbee: ZigBee. */ default @org.jetbrains.annotations.Nullable java.lang.Object getProtocolType() { return null; } /** * Property publishAuto: Whether to automatically model publication after the product is created. *

* true: publishing. * false: not released. * This parameter is not passed, the default value true. */ default @org.jetbrains.annotations.Nullable java.lang.Object getPublishAuto() { return null; } /** * Property resourceGroupId: Resource group ID (group ID to view the resource in the resource management console), specify the product is classified as a resource group. *

* If this parameter is passed, the product will be classified as a default resource group. */ default @org.jetbrains.annotations.Nullable java.lang.Object getResourceGroupId() { return null; } /** * @return a {@link Builder} of {@link ProductProps} */ static Builder builder() { return new Builder(); } /** * A builder for {@link ProductProps} */ public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object nodeType; java.lang.Object productName; java.lang.Object aliyunCommodityCode; java.lang.Object authType; java.lang.Object categoryKey; java.lang.Object dataFormat; java.lang.Object description; java.lang.Object id2; java.lang.Object iotInstanceId; java.lang.Object joinPermissionId; java.lang.Object netType; java.lang.Object protocolType; java.lang.Object publishAuto; java.lang.Object resourceGroupId; /** * Sets the value of {@link ProductProps#getNodeType} * @param nodeType Property nodeType: The node type of the product. This parameter is required. * Values: * 0: Device. A device cannot be mounted with sub-devices. It can connect to IoT Platform * either directly or as a sub-device of a gateway. * 1: Gateway. A gateway can be mounted with sub-devices. It can manage sub-devices, maintain * the topological relationships with sub-devices, and synchronize the topological relationships * to IoT Platform. * @return {@code this} */ public Builder nodeType(java.lang.Number nodeType) { this.nodeType = nodeType; return this; } /** * Sets the value of {@link ProductProps#getNodeType} * @param nodeType Property nodeType: The node type of the product. This parameter is required. * Values: * 0: Device. A device cannot be mounted with sub-devices. It can connect to IoT Platform * either directly or as a sub-device of a gateway. * 1: Gateway. A gateway can be mounted with sub-devices. It can manage sub-devices, maintain * the topological relationships with sub-devices, and synchronize the topological relationships * to IoT Platform. * @return {@code this} */ public Builder nodeType(com.aliyun.ros.cdk.core.IResolvable nodeType) { this.nodeType = nodeType; return this; } /** * Sets the value of {@link ProductProps#getProductName} * @param productName Property productName: The name of the product. This parameter is required. * A product name can be 4 to 30 characters in length and can * contain Chinese characters, English letters, digits, and underscores (_). * Note A product name must be unique in an account. * @return {@code this} */ public Builder productName(java.lang.String productName) { this.productName = productName; return this; } /** * Sets the value of {@link ProductProps#getProductName} * @param productName Property productName: The name of the product. This parameter is required. * A product name can be 4 to 30 characters in length and can * contain Chinese characters, English letters, digits, and underscores (_). * Note A product name must be unique in an account. * @return {@code this} */ public Builder productName(com.aliyun.ros.cdk.core.IResolvable productName) { this.productName = productName; return this; } /** * Sets the value of {@link ProductProps#getAliyunCommodityCode} * @param aliyunCommodityCode Property aliyunCommodityCode: The edition of the product that you want to create. * There are two options: * iothub_senior: Pro Edition. * iothub: Basic Edition. * If you do not input this parameter, the default value is used, which is iothub (Basic * Edition). * @return {@code this} */ public Builder aliyunCommodityCode(java.lang.String aliyunCommodityCode) { this.aliyunCommodityCode = aliyunCommodityCode; return this; } /** * Sets the value of {@link ProductProps#getAliyunCommodityCode} * @param aliyunCommodityCode Property aliyunCommodityCode: The edition of the product that you want to create. * There are two options: * iothub_senior: Pro Edition. * iothub: Basic Edition. * If you do not input this parameter, the default value is used, which is iothub (Basic * Edition). * @return {@code this} */ public Builder aliyunCommodityCode(com.aliyun.ros.cdk.core.IResolvable aliyunCommodityCode) { this.aliyunCommodityCode = aliyunCommodityCode; return this; } /** * Sets the value of {@link ProductProps#getAuthType} * @param authType Property authType: Authentication device to access the Internet of Things platform under the product. * Optional: * secret: using a device key for device authentication. * Details can be found MQTT-TCP connection communication. * id2: Use things device authentication ID. * x509: X.509 certificates using the device for device authentication. * The use of X.509 certificates device side configuration instructions, see Using X.509 certificate authentication. * If this parameter is passed, the default value is secret. * @return {@code this} */ public Builder authType(java.lang.String authType) { this.authType = authType; return this; } /** * Sets the value of {@link ProductProps#getAuthType} * @param authType Property authType: Authentication device to access the Internet of Things platform under the product. * Optional: * secret: using a device key for device authentication. * Details can be found MQTT-TCP connection communication. * id2: Use things device authentication ID. * x509: X.509 certificates using the device for device authentication. * The use of X.509 certificates device side configuration instructions, see Using X.509 certificate authentication. * If this parameter is passed, the default value is secret. * @return {@code this} */ public Builder authType(com.aliyun.ros.cdk.core.IResolvable authType) { this.authType = authType; return this; } /** * Sets the value of {@link ProductProps#getCategoryKey} * @param categoryKey Property categoryKey: Identifier Product category. * If you pass this parameter, the product will be created using the object model specified category; not passed, the standard model is not used in any category. * Call ListThingTemplates, view of things platform predefined category information from the returned results, get the value of CategoryKey. * @return {@code this} */ public Builder categoryKey(java.lang.String categoryKey) { this.categoryKey = categoryKey; return this; } /** * Sets the value of {@link ProductProps#getCategoryKey} * @param categoryKey Property categoryKey: Identifier Product category. * If you pass this parameter, the product will be created using the object model specified category; not passed, the standard model is not used in any category. * Call ListThingTemplates, view of things platform predefined category information from the returned results, get the value of CategoryKey. * @return {@code this} */ public Builder categoryKey(com.aliyun.ros.cdk.core.IResolvable categoryKey) { this.categoryKey = categoryKey; return this; } /** * Sets the value of {@link ProductProps#getDataFormat} * @param dataFormat Property dataFormat: You must specify this parameter if the value of AliyunCommodityCode is iothub_senior. * This parameter is only available and required when you create a Pro Edition product. * Options: * 0: Do not parse/Custom. * 1: Alink JSON. * @return {@code this} */ public Builder dataFormat(java.lang.Number dataFormat) { this.dataFormat = dataFormat; return this; } /** * Sets the value of {@link ProductProps#getDataFormat} * @param dataFormat Property dataFormat: You must specify this parameter if the value of AliyunCommodityCode is iothub_senior. * This parameter is only available and required when you create a Pro Edition product. * Options: * 0: Do not parse/Custom. * 1: Alink JSON. * @return {@code this} */ public Builder dataFormat(com.aliyun.ros.cdk.core.IResolvable dataFormat) { this.dataFormat = dataFormat; return this; } /** * Sets the value of {@link ProductProps#getDescription} * @param description Property description: A description of the product. * The description can be a maximum of 100 characters in * length. * @return {@code this} */ public Builder description(java.lang.String description) { this.description = description; return this; } /** * Sets the value of {@link ProductProps#getDescription} * @param description Property description: A description of the product. * The description can be a maximum of 100 characters in * length. * @return {@code this} */ public Builder description(com.aliyun.ros.cdk.core.IResolvable description) { this.description = description; return this; } /** * Sets the value of {@link ProductProps#getId2} * @param id2 Property id2: Whether ID2 certification. * Optional values: * true: the opening of ID2 certification. * false: do not open ID2 certification. * Do not pass this parameter, the default is not opened. * Explanation * Only 2 East China (Shanghai) regional support ID2 authentication. * If this parameter value is set to true, but passed AuthType parameter value is not id2, the system will AuthType parameter values prevail. * @return {@code this} */ public Builder id2(java.lang.Boolean id2) { this.id2 = id2; return this; } /** * Sets the value of {@link ProductProps#getId2} * @param id2 Property id2: Whether ID2 certification. * Optional values: * true: the opening of ID2 certification. * false: do not open ID2 certification. * Do not pass this parameter, the default is not opened. * Explanation * Only 2 East China (Shanghai) regional support ID2 authentication. * If this parameter value is set to true, but passed AuthType parameter value is not id2, the system will AuthType parameter values prevail. * @return {@code this} */ public Builder id2(com.aliyun.ros.cdk.core.IResolvable id2) { this.id2 = id2; return this; } /** * Sets the value of {@link ProductProps#getIotInstanceId} * @param iotInstanceId Property iotInstanceId: Public instance does not pass this parameter;. * instance that you need to buy the incoming instance ID. * @return {@code this} */ public Builder iotInstanceId(java.lang.String iotInstanceId) { this.iotInstanceId = iotInstanceId; return this; } /** * Sets the value of {@link ProductProps#getIotInstanceId} * @param iotInstanceId Property iotInstanceId: Public instance does not pass this parameter;. * instance that you need to buy the incoming instance ID. * @return {@code this} */ public Builder iotInstanceId(com.aliyun.ros.cdk.core.IResolvable iotInstanceId) { this.iotInstanceId = iotInstanceId; return this; } /** * Sets the value of {@link ProductProps#getJoinPermissionId} * @param joinPermissionId Property joinPermissionId: LoRaWAN network credential ID. * When networking mode NetType chosen LORA, the necessary parameters. * Please call QueryLoRaJoinPermissions query JoinPermissionId network credentials LoRaWAN under your account. * If you do not LoRaWAN network credentials, visit the network management platform to create things together. * @return {@code this} */ public Builder joinPermissionId(java.lang.String joinPermissionId) { this.joinPermissionId = joinPermissionId; return this; } /** * Sets the value of {@link ProductProps#getJoinPermissionId} * @param joinPermissionId Property joinPermissionId: LoRaWAN network credential ID. * When networking mode NetType chosen LORA, the necessary parameters. * Please call QueryLoRaJoinPermissions query JoinPermissionId network credentials LoRaWAN under your account. * If you do not LoRaWAN network credentials, visit the network management platform to create things together. * @return {@code this} */ public Builder joinPermissionId(com.aliyun.ros.cdk.core.IResolvable joinPermissionId) { this.joinPermissionId = joinPermissionId; return this; } /** * Sets the value of {@link ProductProps#getNetType} * @param netType Property netType: Networking mode. * Set this parameter only if you are creating a product whose devices directly connect * to IoT Platform. * Options: * WIFI * CELLULAR * ETHERNET * OTHER * The default value is WIFI. * @return {@code this} */ public Builder netType(java.lang.String netType) { this.netType = netType; return this; } /** * Sets the value of {@link ProductProps#getNetType} * @param netType Property netType: Networking mode. * Set this parameter only if you are creating a product whose devices directly connect * to IoT Platform. * Options: * WIFI * CELLULAR * ETHERNET * OTHER * The default value is WIFI. * @return {@code this} */ public Builder netType(com.aliyun.ros.cdk.core.IResolvable netType) { this.netType = netType; return this; } /** * Sets the value of {@link ProductProps#getProtocolType} * @param protocolType Property protocolType: The protocol that devices of this product use to connect to gateways. * Set this parameter only if you are creating a product whose devices will be connected * to gateways. * Options: * modbus: Modbus. * opc-ua: OPC UA. * customize: Customized protocol. * ble: BLE. * zigbee: ZigBee. * @return {@code this} */ public Builder protocolType(java.lang.String protocolType) { this.protocolType = protocolType; return this; } /** * Sets the value of {@link ProductProps#getProtocolType} * @param protocolType Property protocolType: The protocol that devices of this product use to connect to gateways. * Set this parameter only if you are creating a product whose devices will be connected * to gateways. * Options: * modbus: Modbus. * opc-ua: OPC UA. * customize: Customized protocol. * ble: BLE. * zigbee: ZigBee. * @return {@code this} */ public Builder protocolType(com.aliyun.ros.cdk.core.IResolvable protocolType) { this.protocolType = protocolType; return this; } /** * Sets the value of {@link ProductProps#getPublishAuto} * @param publishAuto Property publishAuto: Whether to automatically model publication after the product is created. * true: publishing. * false: not released. * This parameter is not passed, the default value true. * @return {@code this} */ public Builder publishAuto(java.lang.Boolean publishAuto) { this.publishAuto = publishAuto; return this; } /** * Sets the value of {@link ProductProps#getPublishAuto} * @param publishAuto Property publishAuto: Whether to automatically model publication after the product is created. * true: publishing. * false: not released. * This parameter is not passed, the default value true. * @return {@code this} */ public Builder publishAuto(com.aliyun.ros.cdk.core.IResolvable publishAuto) { this.publishAuto = publishAuto; return this; } /** * Sets the value of {@link ProductProps#getResourceGroupId} * @param resourceGroupId Property resourceGroupId: Resource group ID (group ID to view the resource in the resource management console), specify the product is classified as a resource group. * If this parameter is passed, the product will be classified as a default resource group. * @return {@code this} */ public Builder resourceGroupId(java.lang.String resourceGroupId) { this.resourceGroupId = resourceGroupId; return this; } /** * Sets the value of {@link ProductProps#getResourceGroupId} * @param resourceGroupId Property resourceGroupId: Resource group ID (group ID to view the resource in the resource management console), specify the product is classified as a resource group. * If this parameter is passed, the product will be classified as a default resource group. * @return {@code this} */ public Builder resourceGroupId(com.aliyun.ros.cdk.core.IResolvable resourceGroupId) { this.resourceGroupId = resourceGroupId; return this; } /** * Builds the configured instance. * @return a new instance of {@link ProductProps} * @throws NullPointerException if any required attribute was not provided */ @Override public ProductProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ProductProps} */ @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ProductProps { private final java.lang.Object nodeType; private final java.lang.Object productName; private final java.lang.Object aliyunCommodityCode; private final java.lang.Object authType; private final java.lang.Object categoryKey; private final java.lang.Object dataFormat; private final java.lang.Object description; private final java.lang.Object id2; private final java.lang.Object iotInstanceId; private final java.lang.Object joinPermissionId; private final java.lang.Object netType; private final java.lang.Object protocolType; private final java.lang.Object publishAuto; private final java.lang.Object resourceGroupId; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.nodeType = software.amazon.jsii.Kernel.get(this, "nodeType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.productName = software.amazon.jsii.Kernel.get(this, "productName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.aliyunCommodityCode = software.amazon.jsii.Kernel.get(this, "aliyunCommodityCode", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.authType = software.amazon.jsii.Kernel.get(this, "authType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.categoryKey = software.amazon.jsii.Kernel.get(this, "categoryKey", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.dataFormat = software.amazon.jsii.Kernel.get(this, "dataFormat", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.description = software.amazon.jsii.Kernel.get(this, "description", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.id2 = software.amazon.jsii.Kernel.get(this, "id2", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.iotInstanceId = software.amazon.jsii.Kernel.get(this, "iotInstanceId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.joinPermissionId = software.amazon.jsii.Kernel.get(this, "joinPermissionId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.netType = software.amazon.jsii.Kernel.get(this, "netType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.protocolType = software.amazon.jsii.Kernel.get(this, "protocolType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.publishAuto = software.amazon.jsii.Kernel.get(this, "publishAuto", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.resourceGroupId = software.amazon.jsii.Kernel.get(this, "resourceGroupId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.nodeType = java.util.Objects.requireNonNull(builder.nodeType, "nodeType is required"); this.productName = java.util.Objects.requireNonNull(builder.productName, "productName is required"); this.aliyunCommodityCode = builder.aliyunCommodityCode; this.authType = builder.authType; this.categoryKey = builder.categoryKey; this.dataFormat = builder.dataFormat; this.description = builder.description; this.id2 = builder.id2; this.iotInstanceId = builder.iotInstanceId; this.joinPermissionId = builder.joinPermissionId; this.netType = builder.netType; this.protocolType = builder.protocolType; this.publishAuto = builder.publishAuto; this.resourceGroupId = builder.resourceGroupId; } @Override public final java.lang.Object getNodeType() { return this.nodeType; } @Override public final java.lang.Object getProductName() { return this.productName; } @Override public final java.lang.Object getAliyunCommodityCode() { return this.aliyunCommodityCode; } @Override public final java.lang.Object getAuthType() { return this.authType; } @Override public final java.lang.Object getCategoryKey() { return this.categoryKey; } @Override public final java.lang.Object getDataFormat() { return this.dataFormat; } @Override public final java.lang.Object getDescription() { return this.description; } @Override public final java.lang.Object getId2() { return this.id2; } @Override public final java.lang.Object getIotInstanceId() { return this.iotInstanceId; } @Override public final java.lang.Object getJoinPermissionId() { return this.joinPermissionId; } @Override public final java.lang.Object getNetType() { return this.netType; } @Override public final java.lang.Object getProtocolType() { return this.protocolType; } @Override public final java.lang.Object getPublishAuto() { return this.publishAuto; } @Override public final java.lang.Object getResourceGroupId() { return this.resourceGroupId; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("nodeType", om.valueToTree(this.getNodeType())); data.set("productName", om.valueToTree(this.getProductName())); if (this.getAliyunCommodityCode() != null) { data.set("aliyunCommodityCode", om.valueToTree(this.getAliyunCommodityCode())); } if (this.getAuthType() != null) { data.set("authType", om.valueToTree(this.getAuthType())); } if (this.getCategoryKey() != null) { data.set("categoryKey", om.valueToTree(this.getCategoryKey())); } if (this.getDataFormat() != null) { data.set("dataFormat", om.valueToTree(this.getDataFormat())); } if (this.getDescription() != null) { data.set("description", om.valueToTree(this.getDescription())); } if (this.getId2() != null) { data.set("id2", om.valueToTree(this.getId2())); } if (this.getIotInstanceId() != null) { data.set("iotInstanceId", om.valueToTree(this.getIotInstanceId())); } if (this.getJoinPermissionId() != null) { data.set("joinPermissionId", om.valueToTree(this.getJoinPermissionId())); } if (this.getNetType() != null) { data.set("netType", om.valueToTree(this.getNetType())); } if (this.getProtocolType() != null) { data.set("protocolType", om.valueToTree(this.getProtocolType())); } if (this.getPublishAuto() != null) { data.set("publishAuto", om.valueToTree(this.getPublishAuto())); } if (this.getResourceGroupId() != null) { data.set("resourceGroupId", om.valueToTree(this.getResourceGroupId())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-iot.ProductProps")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ProductProps.Jsii$Proxy that = (ProductProps.Jsii$Proxy) o; if (!nodeType.equals(that.nodeType)) return false; if (!productName.equals(that.productName)) return false; if (this.aliyunCommodityCode != null ? !this.aliyunCommodityCode.equals(that.aliyunCommodityCode) : that.aliyunCommodityCode != null) return false; if (this.authType != null ? !this.authType.equals(that.authType) : that.authType != null) return false; if (this.categoryKey != null ? !this.categoryKey.equals(that.categoryKey) : that.categoryKey != null) return false; if (this.dataFormat != null ? !this.dataFormat.equals(that.dataFormat) : that.dataFormat != null) return false; if (this.description != null ? !this.description.equals(that.description) : that.description != null) return false; if (this.id2 != null ? !this.id2.equals(that.id2) : that.id2 != null) return false; if (this.iotInstanceId != null ? !this.iotInstanceId.equals(that.iotInstanceId) : that.iotInstanceId != null) return false; if (this.joinPermissionId != null ? !this.joinPermissionId.equals(that.joinPermissionId) : that.joinPermissionId != null) return false; if (this.netType != null ? !this.netType.equals(that.netType) : that.netType != null) return false; if (this.protocolType != null ? !this.protocolType.equals(that.protocolType) : that.protocolType != null) return false; if (this.publishAuto != null ? !this.publishAuto.equals(that.publishAuto) : that.publishAuto != null) return false; return this.resourceGroupId != null ? this.resourceGroupId.equals(that.resourceGroupId) : that.resourceGroupId == null; } @Override public final int hashCode() { int result = this.nodeType.hashCode(); result = 31 * result + (this.productName.hashCode()); result = 31 * result + (this.aliyunCommodityCode != null ? this.aliyunCommodityCode.hashCode() : 0); result = 31 * result + (this.authType != null ? this.authType.hashCode() : 0); result = 31 * result + (this.categoryKey != null ? this.categoryKey.hashCode() : 0); result = 31 * result + (this.dataFormat != null ? this.dataFormat.hashCode() : 0); result = 31 * result + (this.description != null ? this.description.hashCode() : 0); result = 31 * result + (this.id2 != null ? this.id2.hashCode() : 0); result = 31 * result + (this.iotInstanceId != null ? this.iotInstanceId.hashCode() : 0); result = 31 * result + (this.joinPermissionId != null ? this.joinPermissionId.hashCode() : 0); result = 31 * result + (this.netType != null ? this.netType.hashCode() : 0); result = 31 * result + (this.protocolType != null ? this.protocolType.hashCode() : 0); result = 31 * result + (this.publishAuto != null ? this.publishAuto.hashCode() : 0); result = 31 * result + (this.resourceGroupId != null ? this.resourceGroupId.hashCode() : 0); return result; } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy