package com.airlock.iam.common.domain.model.state;

public record LockResult(boolean lockAcquired) implements RetryableOperation {
   public static LockResult alreadyLocked() {
      return new LockResult(false);
   }

   public static LockResult acquiredLock() {
      return new LockResult(true);
   }

   @Override
   public boolean shouldRetry() {
      return !this.lockAcquired;
   }
}
