code: @Override
      public PutConfigurationRecorderResult putConfigurationRecorder(PutConfigurationRecorderRequest request) {
          request = beforeClientExecution(request);
          return executePutConfigurationRecorder(request);
      }
docs: <p>
  Creates a new configuration recorder to record the selected resource configurations.
  </p>
  <p>
  You can use this action to change the role <code>roleARN</code> or the <code>recordingGroup</code> of an existing
  recorder. To change the role, call the action on the existing configuration recorder and specify a role.
  </p>
  <note>
  <p>
  Currently, you can specify only one configuration recorder per region in your account.
  </p>
  <p>
  If <code>ConfigurationRecorder</code> does not have the <b>recordingGroup</b> parameter specified, the default is
  to record all supported resource types.
  </p>
  </note>
  
  @param putConfigurationRecorderRequest
  The input for the <a>PutConfigurationRecorder</a> action.
  @return Result of the PutConfigurationRecorder operation returned by the service.
  @throws MaxNumberOfConfigurationRecordersExceededException
  You have reached the limit of the number of recorders you can create.
  @throws InvalidConfigurationRecorderNameException
  You have provided a configuration recorder name that is not valid.
  @throws InvalidRoleException
  You have provided a null or empty role ARN.
  @throws InvalidRecordingGroupException
  AWS Config throws an exception if the recording group does not contain a valid list of resource types.
  Invalid values might also be incorrectly formatted.
  @sample AmazonConfig.PutConfigurationRecorder
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/config-2014-11-12/PutConfigurationRecorder"
  target="_top">AWS API Documentation</a>