LocationWithPathAndUuid( Path path,
UUID uuid ) {
assert path != null;
assert uuid != null;
this.path = path;
this.idProperties = Collections.singletonList((Property)new BasicSingleValueProperty(DnaLexicon.UUID, uuid));
// Paths are immutable, Properties are immutable, the idProperties list
// is wrapped in an unmodifiableList by the Location factory methods...
// ... so we can cache the hash code.
hashCode = HashCode.compute(this.path, idProperties);