code: public boolean cancelInvocation(Long invokeId) throws TCAPException {
          if (this.previewMode)
              return false;
  
          try {
              this.dialogLock.lock();
              int index = getIndexFromInvokeId(invokeId);
              if (index < 0 || index >= this.operationsSent.length) {
                  throw new TCAPException("Wrong invoke id passed.");
              }
  
              // lookup through send buffer.
              for (index = 0; index < this.scheduledComponentList.size(); index++) {
                  Component cr = this.scheduledComponentList.get(index);
                  if (cr.getType() == ComponentType.Invoke && cr.getInvokeId().equals(invokeId)) {
                      // lucky
                      // TCInvokeRequestImpl invoke = (TCInvokeRequestImpl) cr;
                      // there is no notification on cancel?
                      this.scheduledComponentList.remove(index);
                      ((InvokeImpl) cr).stopTimer();
                      ((InvokeImpl) cr).setState(OperationState.Idle);
                      return true;
                  }
              }
  
              return false;
          } finally {
              this.dialogLock.unlock();
          }
      }
docs: /*
  (non-Javadoc)
  
  @see org.restcomm.protocols.ss7.tcap.api.tc.dialog.Dialog#cancelInvocation (java.lang.Long)