Guard interface - determines if an operation can be executed
Determine if the operation can proceed
true if allowed, false if denied, or throws an exception
Guard interface - determines if an operation can be executed