The DataStore.canOpen(StorageConnection) method currently returns a Boolean. It should be a set of Enum values instead. The enumeration would contains at least READ, WRITE, APPEND and maybe an UNKNOWN value exclusive with all others. An empty set would means that the DataStore does not recognize the format (it can neither read or write it).
The proposed enumeration is similar to the StandardOpenOption provided in JDK7. Maybe we should leverage that enumeration. However we would need to provide a replacement for the JDK6 branches.