code: @Override
      public CreateTransitGatewayResult createTransitGateway(CreateTransitGatewayRequest request) {
          request = beforeClientExecution(request);
          return executeCreateTransitGateway(request);
      }
docs: <p>
  Creates a transit gateway.
  </p>
  <p>
  You can use a transit gateway to interconnect your virtual private clouds (VPC) and on-premises networks. After
  the transit gateway enters the <code>available</code> state, you can attach your VPCs and VPN connections to the
  transit gateway.
  </p>
  <p>
  To attach your VPCs, use <a>CreateTransitGatewayVpcAttachment</a>.
  </p>
  <p>
  To attach a VPN connection, use <a>CreateCustomerGateway</a> to create a customer gateway and specify the ID of
  the customer gateway and the ID of the transit gateway in a call to <a>CreateVpnConnection</a>.
  </p>
  <p>
  When you create a transit gateway, we create a default transit gateway route table and use it as the default
  association route table and the default propagation route table. You can use
  <a>CreateTransitGatewayRouteTable</a> to create additional transit gateway route tables. If you disable automatic
  route propagation, we do not create a default transit gateway route table. You can use
  <a>EnableTransitGatewayRouteTablePropagation</a> to propagate routes from a resource attachment to a transit
  gateway route table. If you disable automatic associations, you can use <a>AssociateTransitGatewayRouteTable</a>
  to associate a resource attachment with a transit gateway route table.
  </p>
  
  @param createTransitGatewayRequest
  @return Result of the CreateTransitGateway operation returned by the service.
  @sample AmazonEC2.CreateTransitGateway
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGateway" target="_top">AWS API
  Documentation</a>