Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2010-2015 Amazon.com, Inc. or its affiliates. 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.
   * A copy of the License is located at
   * 
   *  http://aws.amazon.com/apache2.0
   * 
  * or in the "license" file accompanying this file. This file 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.amazonaws.services.dynamodbv2.model;
 

Represents the properties of a global secondary index.

 
 public class GlobalSecondaryIndex implements SerializableCloneable {

    
The name of the global secondary index. The name must be unique among all other indexes on this table.

Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+

 
     private String indexName;

    
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).

Constraints:
Length: 1 - 2

 
Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
 
     private Projection projection;

    
Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

 
     private ProvisionedThroughput provisionedThroughput;

    
The name of the global secondary index. The name must be unique among all other indexes on this table.

Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+

Returns:
The name of the global secondary index. The name must be unique among all other indexes on this table.
 
     public String getIndexName() {
         return ;
     }
    
    
The name of the global secondary index. The name must be unique among all other indexes on this table.

Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+

Parameters:
indexName The name of the global secondary index. The name must be unique among all other indexes on this table.
 
     public void setIndexName(String indexName) {
         this. = indexName;
     }
    
    
The name of the global secondary index. The name must be unique among all other indexes on this table.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+

Parameters:
indexName The name of the global secondary index. The name must be unique among all other indexes on this table.
Returns:
A reference to this updated object so that method calls can be chained together.
    public GlobalSecondaryIndex withIndexName(String indexName) {
        this. = indexName;
        return this;
    }

    
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).

Constraints:
Length: 1 - 2

Returns:
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).
        return ;
    }
    
    
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).

Constraints:
Length: 1 - 2

Parameters:
keySchema The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).
    public void setKeySchema(java.util.Collection<KeySchemaElementkeySchema) {
        if (keySchema == null) {
            this. = null;
            return;
        }
        keySchemaCopy.addAll(keySchema);
        this. = keySchemaCopy;
    }
    
    
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).

NOTE: This method appends the values to the existing list (if any). Use setKeySchema(java.util.Collection) or withKeySchema(java.util.Collection) if you want to override the existing values.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 1 - 2

Parameters:
keySchema The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).
Returns:
A reference to this updated object so that method calls can be chained together.
    public GlobalSecondaryIndex withKeySchema(KeySchemaElement... keySchema) {
        if (getKeySchema() == nullsetKeySchema(new java.util.ArrayList<KeySchemaElement>(keySchema.length));
        for (KeySchemaElement value : keySchema) {
            getKeySchema().add(value);
        }
        return this;
    }
    
    
The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 1 - 2

Parameters:
keySchema The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types (HASH or RANGE).
Returns:
A reference to this updated object so that method calls can be chained together.
        if (keySchema == null) {
            this. = null;
        } else {
            keySchemaCopy.addAll(keySchema);
            this. = keySchemaCopy;
        }
        return this;
    }

    
Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.

Returns:
Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
    public Projection getProjection() {
        return ;
    }
    
    
Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.

Parameters:
projection Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
    public void setProjection(Projection projection) {
        this. = projection;
    }
    
    
Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.

Returns a reference to this object so that method calls can be chained together.

Parameters:
projection Represents attributes that are copied (projected) from the table into an index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
Returns:
A reference to this updated object so that method calls can be chained together.
    public GlobalSecondaryIndex withProjection(Projection projection) {
        this. = projection;
        return this;
    }

    
Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

Returns:
Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

        return ;
    }
    
    
Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

Parameters:
provisionedThroughput Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

    public void setProvisionedThroughput(ProvisionedThroughput provisionedThroughput) {
        this. = provisionedThroughput;
    }
    
    
Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

Returns a reference to this object so that method calls can be chained together.

Parameters:
provisionedThroughput Represents the provisioned throughput settings for a specified table or index. The settings can be modified using the UpdateTable operation.

For current minimum and maximum provisioned throughput values, see Limits in the Amazon DynamoDB Developer Guide.

Returns:
A reference to this updated object so that method calls can be chained together.
    public GlobalSecondaryIndex withProvisionedThroughput(ProvisionedThroughput provisionedThroughput) {
        this. = provisionedThroughput;
        return this;
    }

    
Returns a string representation of this object; useful for testing and debugging.

Returns:
A string representation of this object.
See also:
java.lang.Object.toString()
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getIndexName() != nullsb.append("IndexName: " + getIndexName() + ",");
        if (getKeySchema() != nullsb.append("KeySchema: " + getKeySchema() + ",");
        if (getProjection() != nullsb.append("Projection: " + getProjection() + ",");
        if (getProvisionedThroughput() != nullsb.append("ProvisionedThroughput: " + getProvisionedThroughput() );
        sb.append("}");
        return sb.toString();
    }
    
    @Override
    public int hashCode() {
        final int prime = 31;
        int hashCode = 1;
        
        hashCode = prime * hashCode + ((getIndexName() == null) ? 0 : getIndexName().hashCode()); 
        hashCode = prime * hashCode + ((getKeySchema() == null) ? 0 : getKeySchema().hashCode()); 
        hashCode = prime * hashCode + ((getProjection() == null) ? 0 : getProjection().hashCode()); 
        hashCode = prime * hashCode + ((getProvisionedThroughput() == null) ? 0 : getProvisionedThroughput().hashCode()); 
        return hashCode;
    }
    
    @Override
    public boolean equals(Object obj) {
        if (this == objreturn true;
        if (obj == nullreturn false;
        if (obj instanceof GlobalSecondaryIndex == falsereturn false;
        GlobalSecondaryIndex other = (GlobalSecondaryIndex)obj;
        
        if (other.getIndexName() == null ^ this.getIndexName() == nullreturn false;
        if (other.getIndexName() != null && other.getIndexName().equals(this.getIndexName()) == falsereturn false
        if (other.getKeySchema() == null ^ this.getKeySchema() == nullreturn false;
        if (other.getKeySchema() != null && other.getKeySchema().equals(this.getKeySchema()) == falsereturn false
        if (other.getProjection() == null ^ this.getProjection() == nullreturn false;
        if (other.getProjection() != null && other.getProjection().equals(this.getProjection()) == falsereturn false
        if (other.getProvisionedThroughput() == null ^ this.getProvisionedThroughput() == nullreturn false;
        if (other.getProvisionedThroughput() != null && other.getProvisionedThroughput().equals(this.getProvisionedThroughput()) == falsereturn false
        return true;
    }
    
    @Override
    public GlobalSecondaryIndex clone() {
        try {
            return (GlobalSecondaryIndexsuper.clone();
        
        } catch (CloneNotSupportedException e) {
            throw new IllegalStateException(
                    "Got a CloneNotSupportedException from Object.clone() "
                    + "even though we're Cloneable!",
                    e);
        }
        
    }
}
    
New to GrepCode? Check out our FAQ X