src/main/java/com/googlecode/objectify/impl/KeyMetadata.java
public com.google.cloud.datastore.Key getCompleteKey(final P pojo) {
		final com.google.cloud.datastore.IncompleteKey key = getIncompleteKey(pojo);

		if (key instanceof com.google.cloud.datastore.Key)
			return (com.google.cloud.datastore.Key)key;
		else
			throw new IllegalArgumentException("You cannot create a Key for an object with a null @Id. Object was " + pojo);
	}
public com.google.cloud.datastore.Key getCompleteKey(final P pojo) {
		final com.google.cloud.datastore.IncompleteKey key = getIncompleteKey(pojo);

		if (key instanceof com.google.cloud.datastore.Key)
			return (com.google.cloud.datastore.Key)key;
		else
			throw new IllegalArgumentException("You cannot create a Key for an object with a null @Id. Object was " + pojo);
	}
Gets a key composed of the relevant id and parent fields in the object.

@param pojo must be of the entityClass type for this metadata.
@throws IllegalArgumentException if pojo has an incomplete key