in google-http-client-jdo/src/main/java/com/google/api/client/extensions/jdo/JdoDataStoreFactory.java [147:173]
public JdoDataStore<V> set(String key, V value) throws IOException {
Preconditions.checkNotNull(key);
Preconditions.checkNotNull(value);
lock.lock();
try {
PersistenceManager persistenceManager = persistenceManagerFactory.getPersistenceManager();
try {
Query query = newKeyQuery(persistenceManager);
try {
JdoValue jdoValue = executeKeyQuery(query, key);
if (jdoValue != null) {
jdoValue.serialize(value);
} else {
jdoValue = new JdoValue(getId(), key, value);
persistenceManager.makePersistent(jdoValue);
}
} finally {
query.closeAll();
}
} finally {
persistenceManager.close();
}
} finally {
lock.unlock();
}
return this;
}