@antollinim @ecrisostomo Where auto-creating relationships is concerned (not setting simple primitive properties), the SDK's current functionality is to invoke the operation against the server immediately.  For example:

```java
directory.createAccount
account.addGroup(group) -> returns newly persisted GroupMembership
group.addAccount(account) -> returns newly persisted GroupMembership
application.createAccountStoreMapping(accountStoreMapping)
```
etc.

As such, we should retain this behavior for `setDefaultAccountStore` and `setDefaultGroupStore`: these are merely convenience methods that automatically create `*Mapping` resource, just like the above convenience methods.

The important thing here is to **very** clearly JavaDoc the heck out of the fact these are convenience methods that execute _immediately_.  We do that a lot by having an immediate line like this after the 1st sentence summary in the JavaDoc:

```java
/**
 * My single sentence summary here.
 * <p>
 * <b>Usage Notice:</b> Unlike other methods in this class that require the {@link #save()} method
 * to be called to persist changes, this is a convenience method will call the server immediately.
 * </p>
 * ...
 */
```

We can discuss usage paradigm changes for relationship related methods (as opposed to primitives) - which I'm totally happy to have - for a later release.