Skip to content

RosInstance

This class is a base encapsulation around the ROS resource type DATASOURCE::MONGODB::Instance, which is used to query the information about an ApsaraDB for MongoDB instance.

Initializers

import "github.com/alibabacloud-go/ros-cdk/alicloudroscdkmongodb/datasource"
datasource.NewRosInstance(scope Construct, id *string, props RosInstanceProps, enableResourcePropertyConstraint *bool) RosInstance
Name Type Description
scope github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.Construct - scope in which this resource is defined.
id *string - scoped id of the resource.
props RosInstanceProps - resource properties.
enableResourcePropertyConstraint *bool No description.

scopeRequired

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.Construct

scope in which this resource is defined.


idRequired

  • Type: *string

scoped id of the resource.


propsRequired

resource properties.


enableResourcePropertyConstraintRequired

  • Type: *bool

Methods

Name Description
ToString Returns a string representation of this construct.
Synthesize Allows this construct to emit artifacts into the cloud assembly during synthesis.
OverrideLogicalId Overrides the auto-generated logical ID with a specific ID.
AddCondition No description.
AddCount No description.
AddDeletionOverride Syntactic sugar for addOverride(path, undefined).
AddDependsOn Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.
AddDesc No description.
AddMetaData No description.
AddOverride Adds an override to the synthesized ROS resource.
AddPropertyDeletionOverride Adds an override that deletes the value of a property from the resource definition.
AddPropertyOverride Adds an override to a resource property.
AddRosDependency No description.
ApplyRemovalPolicy Sets the deletion policy of the resource based on the removal policy specified.
GetAtt Returns a token for an runtime attribute of this resource.

ToString

func ToString() *string

Returns a string representation of this construct.

Synthesize

func Synthesize(session ISynthesisSession)

Allows this construct to emit artifacts into the cloud assembly during synthesis.

This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.

sessionRequired

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.ISynthesisSession

The synthesis session.


OverrideLogicalId

func OverrideLogicalId(newLogicalId *string)

Overrides the auto-generated logical ID with a specific ID.

newLogicalIdRequired

  • Type: *string

The new logical ID to use for this stack element.


AddCondition

func AddCondition(con RosCondition)

conRequired

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.RosCondition

AddCount

func AddCount(count interface{})

countRequired

  • Type: interface{}

AddDeletionOverride

func AddDeletionOverride(path *string)

Syntactic sugar for addOverride(path, undefined).

pathRequired

  • Type: *string

The path of the value to delete.


AddDependsOn

func AddDependsOn(target RosResource)

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

targetRequired

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.RosResource

AddDesc

func AddDesc(desc *string)

descRequired

  • Type: *string

AddMetaData

func AddMetaData(key *string, value interface{})

keyRequired

  • Type: *string

valueRequired

  • Type: interface{}

AddOverride

func AddOverride(path *string, value interface{})

Adds an override to the synthesized ROS resource.

To add a property override, either use addPropertyOverride or prefix path with "Properties." (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

For example,

addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute'])
addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE')

would add the overrides

"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}

pathRequired

  • Type: *string

The path of the property, you can use dot notation to override values in complex types.

Any intermdediate keys will be created as needed.


valueRequired

  • Type: interface{}

The value.

Could be primitive or complex.


AddPropertyDeletionOverride

func AddPropertyDeletionOverride(propertyPath *string)

Adds an override that deletes the value of a property from the resource definition.

propertyPathRequired

  • Type: *string

The path to the property.


AddPropertyOverride

func AddPropertyOverride(propertyPath *string, value interface{})

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

propertyPathRequired

  • Type: *string

The path of the property.


valueRequired

  • Type: interface{}

The value.


AddRosDependency

func AddRosDependency(target *string)

targetRequired

  • Type: *string

ApplyRemovalPolicy

func ApplyRemovalPolicy(policy RemovalPolicy, options RemovalPolicyOptions)

Sets the deletion policy of the resource based on the removal policy specified.

policyOptional

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.RemovalPolicy

optionsOptional

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.RemovalPolicyOptions

GetAtt

func GetAtt(attributeName *string) Reference

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

attributeNameRequired

  • Type: *string

The name of the attribute.


Static Functions

Name Description
IsConstruct Return whether the given object is a Construct.
IsRosElement Returns true if a construct is a stack element (i.e. part of the synthesized template).
IsRosResource Check whether the given construct is a RosResource.

IsConstruct

import "github.com/alibabacloud-go/ros-cdk/alicloudroscdkmongodb/datasource"
datasource.RosInstance_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct.

xRequired

  • Type: interface{}

IsRosElement

import "github.com/alibabacloud-go/ros-cdk/alicloudroscdkmongodb/datasource"
datasource.RosInstance_IsRosElement(x interface{}) *bool

Returns true if a construct is a stack element (i.e. part of the synthesized template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

xRequired

  • Type: interface{}

IsRosResource

import "github.com/alibabacloud-go/ros-cdk/alicloudroscdkmongodb/datasource"
datasource.RosInstance_IsRosResource(construct IConstruct) *bool

Check whether the given construct is a RosResource.

constructRequired

  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IConstruct

Properties

Name Type Description
Node github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.ConstructNode The construct tree node associated with this construct.
CreationStack []string No description.
LogicalId *string The logical ID for this stack element.
Stack github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.Stack The stack in which this element is defined.
Ref *string Return a string that will be resolved to a RosTemplate { Ref } for this element.
RosOptions github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IRosResourceOptions Options for this resource, such as condition, update policy etc.
RosResourceType *string ROS resource type.
AttrAccountDescription github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrAccountName github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrAutoRenew github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrAutoRenewDuration github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrBackupInterval github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrBackupRetentionPeriod github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrCreateTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrDbInstanceClass github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrDbInstanceDescription github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrDbInstanceReleaseProtection github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrDbInstanceStorage github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrDbInstanceType github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrEnableBackupLog github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrEngine github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrEngineVersion github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrExpireTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrHiddenZoneId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrInstanceId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrKindCode github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrLastDowngradeTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrLockMode github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrLogBackupRetentionPeriod github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrMaintainEndTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrMaintainStartTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrMongosList github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrNetworkAddresses github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrNetworkType github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrParameters github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrPaymentType github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrPreferredBackupPeriod github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrPreferredBackupTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrProtocolType github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrReadonlyReplicas github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrReplicaSetsConnections github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrReplicationFactor github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrResourceGroupId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSecondaryZoneId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSecurityGroupId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSecurityIpList github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSecurityIps github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrShardList github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSnapshotBackupType github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSslExpiredTime github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrSslStatus github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrStorageEngine github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrTags github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrTdeStatus github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrVpcAuthMode github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrVpcId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrVSwitchId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
AttrZoneId github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable No description.
EnableResourcePropertyConstraint *bool No description.
InstanceId interface{} No description.
RefreshOptions interface{} No description.

NodeRequired

func Node() ConstructNode
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.ConstructNode

The construct tree node associated with this construct.


CreationStackRequired

func CreationStack() *[]*string
  • Type: []string

LogicalIdRequired

func LogicalId() *string
  • Type: *string

The logical ID for this stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).


StackRequired

func Stack() Stack
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.Stack

The stack in which this element is defined.

RosElements must be defined within a stack scope (directly or indirectly).


RefRequired

func Ref() *string
  • Type: *string

Return a string that will be resolved to a RosTemplate { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).


RosOptionsRequired

func RosOptions() IRosResourceOptions
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IRosResourceOptions

Options for this resource, such as condition, update policy etc.


RosResourceTypeRequired

func RosResourceType() *string
  • Type: *string

ROS resource type.


AttrAccountDescriptionRequired

func AttrAccountDescription() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrAccountNameRequired

func AttrAccountName() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrAutoRenewRequired

func AttrAutoRenew() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrAutoRenewDurationRequired

func AttrAutoRenewDuration() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrBackupIntervalRequired

func AttrBackupInterval() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrBackupRetentionPeriodRequired

func AttrBackupRetentionPeriod() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrCreateTimeRequired

func AttrCreateTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrDbInstanceClassRequired

func AttrDbInstanceClass() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrDbInstanceDescriptionRequired

func AttrDbInstanceDescription() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrDbInstanceReleaseProtectionRequired

func AttrDbInstanceReleaseProtection() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrDbInstanceStorageRequired

func AttrDbInstanceStorage() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrDbInstanceTypeRequired

func AttrDbInstanceType() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrEnableBackupLogRequired

func AttrEnableBackupLog() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrEngineRequired

func AttrEngine() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrEngineVersionRequired

func AttrEngineVersion() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrExpireTimeRequired

func AttrExpireTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrHiddenZoneIdRequired

func AttrHiddenZoneId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrInstanceIdRequired

func AttrInstanceId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrKindCodeRequired

func AttrKindCode() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrLastDowngradeTimeRequired

func AttrLastDowngradeTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrLockModeRequired

func AttrLockMode() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrLogBackupRetentionPeriodRequired

func AttrLogBackupRetentionPeriod() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrMaintainEndTimeRequired

func AttrMaintainEndTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrMaintainStartTimeRequired

func AttrMaintainStartTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrMongosListRequired

func AttrMongosList() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrNetworkAddressesRequired

func AttrNetworkAddresses() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrNetworkTypeRequired

func AttrNetworkType() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrParametersRequired

func AttrParameters() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrPaymentTypeRequired

func AttrPaymentType() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrPreferredBackupPeriodRequired

func AttrPreferredBackupPeriod() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrPreferredBackupTimeRequired

func AttrPreferredBackupTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrProtocolTypeRequired

func AttrProtocolType() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrReadonlyReplicasRequired

func AttrReadonlyReplicas() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrReplicaSetsConnectionsRequired

func AttrReplicaSetsConnections() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrReplicationFactorRequired

func AttrReplicationFactor() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrResourceGroupIdRequired

func AttrResourceGroupId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSecondaryZoneIdRequired

func AttrSecondaryZoneId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSecurityGroupIdRequired

func AttrSecurityGroupId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSecurityIpListRequired

func AttrSecurityIpList() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSecurityIpsRequired

func AttrSecurityIps() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrShardListRequired

func AttrShardList() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSnapshotBackupTypeRequired

func AttrSnapshotBackupType() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSslExpiredTimeRequired

func AttrSslExpiredTime() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrSslStatusRequired

func AttrSslStatus() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrStorageEngineRequired

func AttrStorageEngine() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrTagsRequired

func AttrTags() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrTdeStatusRequired

func AttrTdeStatus() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrVpcAuthModeRequired

func AttrVpcAuthMode() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrVpcIdRequired

func AttrVpcId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrVSwitchIdRequired

func AttrVSwitchId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

AttrZoneIdRequired

func AttrZoneId() IResolvable
  • Type: github.com/alibabacloud-go/ros-cdk/alicloudroscdkcore.IResolvable

EnableResourcePropertyConstraintRequired

func EnableResourcePropertyConstraint() *bool
  • Type: *bool

InstanceIdRequired

func InstanceId() interface{}
  • Type: interface{}

RefreshOptionsOptional

func RefreshOptions() interface{}
  • Type: interface{}

Constants

Name Type Description
RosResourceTypeName *string The resource type name for this resource class.

RosResourceTypeNameRequired

func RosResourceTypeName() *string
  • Type: *string

The resource type name for this resource class.