code: protected void fireTCAbortUser(Dialog tcapDialog, MAPUserAbortChoice mapUserAbortChoice,
              MAPExtensionContainer mapExtensionContainer, boolean returnMessageOnError) throws MAPException {
  
          if (this.getTCAPProvider().getPreviewMode()) {
              return;
          }
  
          if (tcapDialog.getApplicationContextName() == null) // MAP V1
              this.fireTCAbortV1(tcapDialog, returnMessageOnError);
  
          TCUserAbortRequest tcUserAbort = this.getTCAPProvider().getDialogPrimitiveFactory().createUAbort(tcapDialog);
  
          MAPUserAbortInfoImpl mapUserAbortInfoImpl = new MAPUserAbortInfoImpl();
          mapUserAbortInfoImpl.setMAPUserAbortChoice(mapUserAbortChoice);
          mapUserAbortInfoImpl.setExtensionContainer(mapExtensionContainer);
  
          AsnOutputStream localasnOs = new AsnOutputStream();
          mapUserAbortInfoImpl.encodeAll(localasnOs);
  
          UserInformation userInformation = TcapFactory.createUserInformation();
  
          userInformation.setOid(true);
          userInformation.setOidValue(MAPDialogueAS.MAP_DialogueAS.getOID());
  
          userInformation.setAsn(true);
          userInformation.setEncodeType(localasnOs.toByteArray());
          if (returnMessageOnError)
              tcUserAbort.setReturnMessageOnError(true);
  
          tcUserAbort.setUserInformation(userInformation);
  
          try {
              tcapDialog.send(tcUserAbort);
          } catch (TCAPSendException e) {
              throw new MAPException(e.getMessage(), e);
          }
  
      }
docs: Issue TC-U-ABORT with the ABRT apdu with MAPUserAbortInfo userInformation
  
  @param tcapDialog
  @param mapUserAbortChoice
  @param mapExtensionContainer
  @throws MAPException