code: @Override
      public DBInstance stopDBInstance(StopDBInstanceRequest request) {
          request = beforeClientExecution(request);
          return executeStopDBInstance(request);
      }
docs: <p>
  Stops an Amazon RDS DB instance. When you stop a DB instance, Amazon RDS retains the DB instance's metadata,
  including its endpoint, DB parameter group, and option group membership. Amazon RDS also retains the transaction
  logs so you can do a point-in-time restore if necessary.
  </p>
  <p>
  For more information, see <a
  href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StopInstance.html"> Stopping an Amazon RDS DB
  Instance Temporarily</a> in the <i>Amazon RDS User Guide.</i>
  </p>
  <note>
  <p>
  This command doesn't apply to Aurora MySQL and Aurora PostgreSQL. For Aurora clusters, use <a>StopDBCluster</a>
  instead.
  </p>
  </note>
  
  @param stopDBInstanceRequest
  @return Result of the StopDBInstance operation returned by the service.
  @throws DBInstanceNotFoundException
  <i>DBInstanceIdentifier</i> doesn't refer to an existing DB instance.
  @throws InvalidDBInstanceStateException
  The DB instance isn't in a valid state.
  @throws DBSnapshotAlreadyExistsException
  <i>DBSnapshotIdentifier</i> is already used by an existing snapshot.
  @throws SnapshotQuotaExceededException
  The request would result in the user exceeding the allowed number of DB snapshots.
  @throws InvalidDBClusterStateException
  The requested operation can't be performed while the cluster is in this state.
  @sample AmazonRDS.StopDBInstance
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/StopDBInstance" target="_top">AWS API
  Documentation</a>