code: @Override
      public AssociateVirtualInterfaceResult associateVirtualInterface(AssociateVirtualInterfaceRequest request) {
          request = beforeClientExecution(request);
          return executeAssociateVirtualInterface(request);
      }
docs: <p>
  Associates a virtual interface with a specified link aggregation group (LAG) or connection. Connectivity to AWS
  is temporarily interrupted as the virtual interface is being migrated. If the target connection or LAG has an
  associated virtual interface with a conflicting VLAN number or a conflicting IP address, the operation fails.
  </p>
  <p>
  Virtual interfaces associated with a hosted connection cannot be associated with a LAG; hosted connections must
  be migrated along with their virtual interfaces using <a>AssociateHostedConnection</a>.
  </p>
  <p>
  To reassociate a virtual interface to a new connection or LAG, the requester must own either the virtual
  interface itself or the connection to which the virtual interface is currently associated. Additionally, the
  requester must own the connection or LAG for the association.
  </p>
  
  @param associateVirtualInterfaceRequest
  @return Result of the AssociateVirtualInterface operation returned by the service.
  @throws DirectConnectServerException
  A server-side error occurred.
  @throws DirectConnectClientException
  One or more parameters are not valid.
  @sample AmazonDirectConnect.AssociateVirtualInterface
  @see <a href="http://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateVirtualInterface"
  target="_top">AWS API Documentation</a>