@Override
    public PutInstancePublicPortsResult putInstancePublicPorts(PutInstancePublicPortsRequest request) {
        request = beforeClientExecution(request);
        return executePutInstancePublicPorts(request);
    }
<p>
Opens ports for a specific Amazon Lightsail instance, and specifies the IP addresses allowed to connect to the
instance through the ports, and the protocol. This action also closes all currently open ports that are not
included in the request. Include all of the ports and the protocols you want to open in your
<code>PutInstancePublicPorts</code>request. Or use the <code>OpenInstancePublicPorts</code> action to open ports
without closing currently open ports.
</p>
<p>
The <code>PutInstancePublicPorts</code> action supports tag-based access control via resource tags applied to the
resource identified by <code>instanceName</code>. For more information, see the <a
href="https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-controlling-access-using-tags"
>Amazon Lightsail Developer Guide</a>.
</p>

@param putInstancePublicPortsRequest
@return Result of the PutInstancePublicPorts operation returned by the service.
@throws ServiceException
        A general service exception.
@throws InvalidInputException
        Lightsail throws this exception when user input does not conform to the validation rules of an input
        field.</p> <note>
        <p>
        Domain and distribution APIs are only available in the N. Virginia (<code>us-east-1</code>) Amazon Web
        Services Region. Please set your Amazon Web Services Region configuration to <code>us-east-1</code> to
        create, view, or edit these resources.
        </p>
@throws NotFoundException
        Lightsail throws this exception when it cannot find a resource.
@throws OperationFailureException
        Lightsail throws this exception when an operation fails to execute.
@throws AccessDeniedException
        Lightsail throws this exception when the user cannot be authenticated or uses invalid credentials to
        access a resource.
@throws AccountSetupInProgressException
        Lightsail throws this exception when an account is still in the setup in progress state.
@throws UnauthenticatedException
        Lightsail throws this exception when the user has not been authenticated.
@sample AmazonLightsail.PutInstancePublicPorts
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/lightsail-2016-11-28/PutInstancePublicPorts"
     target="_top">AWS API Documentation</a>
aws-java-sdk-lightsail/src/main/java/com/amazonaws/services/lightsail/AmazonLightsailClient.java