core/src/main/java/org/infinispan/interceptors/locking/AbstractLockingInterceptor.java
// We need this method in here because of putForExternalRead
We need this method in here because of putForExternalRead
We need this method in here because of putForExternalRead
protected final Object visitNonTxDataWriteCommand(InvocationContext ctx, DataWriteCommand command) throws Throwable {
      if (hasSkipLocking(command) || !shouldLockKey(command.getKey())) {
         return invokeNext(ctx, command);
      }
      try {
         lockAndRecord(ctx, command.getKey(), getLockTimeoutMillis(command));
      } catch (Throwable t) {
         lockManager.unlockAll(ctx);
         throw t;
      }
      return invokeNextAndFinally(ctx, command, unlockAllReturnHandler);
   }
protected final Object visitNonTxDataWriteCommand ( InvocationContext ctx , DataWriteCommand command ) throws Throwable { if ( hasSkipLocking ( command ) || ! shouldLockKey ( command . getKey ( ) ) ) { return invokeNext ( ctx , command ) ; } try { lockAndRecord ( ctx , command . getKey ( ) , getLockTimeoutMillis ( command ) ) ; } catch ( Throwable t ) { lockManager . unlockAll ( ctx ) ; throw t ; } return invokeNextAndFinally ( ctx , command , unlockAllReturnHandler ) ; }
We need this method in here because of putForExternalRead
We need this method in here because of putForExternalRead