private void validateStatePreCreate(User user) { if (this.user == null) throw new IllegalStateException("resources id not initialized!"); if (!this.user.isEmpty()) throw new IllegalStateException("user already exists!"); if (!userId.equals(user.identity())) throw new IllegalArgumentException("wrong data passed - user#identity did not match!"); }
@Override @Modify public void create(User user, Result<String> result) throws AppException { validateStatePreCreate(user); getValidator() .validate( user, result.from( u -> { this.user = u; return user.identity().getKey(); })); }