code: @Override
      public GetShardIteratorResult getShardIterator(GetShardIteratorRequest request) {
          request = beforeClientExecution(request);
          return executeGetShardIterator(request);
      }
docs: <p>
  Returns a shard iterator. A shard iterator provides information about how to retrieve the stream records from
  within a shard. Use the shard iterator in a subsequent <code>GetRecords</code> request to read the stream records
  from the shard.
  </p>
  <note>
  <p>
  A shard iterator expires 15 minutes after it is returned to the requester.
  </p>
  </note>
  
  @param getShardIteratorRequest
  Represents the input of a <code>GetShardIterator</code> operation.
  @return Result of the GetShardIterator operation returned by the service.
  @throws ResourceNotFoundException
  The operation tried to access a nonexistent stream.
  @throws InternalServerErrorException
  An error occurred on the server side.
  @throws TrimmedDataAccessException
  The operation attempted to read past the oldest stream record in a shard.</p>
  <p>
  In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records whose age exceeds this
  limit are subject to removal (trimming) from the stream. You might receive a TrimmedDataAccessException
  if:
  </p>
  <ul>
  <li>
  <p>
  You request a shard iterator with a sequence number older than the trim point (24 hours).
  </p>
  </li>
  <li>
  <p>
  You obtain a shard iterator, but before you use the iterator in a <code>GetRecords</code> request, a
  stream record in the shard exceeds the 24 hour period and is trimmed. This causes the iterator to access
  a record that no longer exists.
  </p>
  </li>
  @sample AmazonDynamoDBStreams.GetShardIterator
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/streams-dynamodb-2012-08-10/GetShardIterator"
  target="_top">AWS API Documentation</a>