For refresh, we can ignore things like deletion or transience.
@param pc
@return the refreshed object
7465
private ZooPC checkObjectForRefresh(Object pc) {
        if (!(pc instanceof ZooPC)) {
        	throw DBLogger.newUser("The object is not persistent capable: " + pc.getClass());
        }
        
        ZooPC pci = (ZooPC) pc;
        if (!pci.jdoZooIsPersistent()) {
        	return pci;
        }

        if (pci.jdoZooGetContext().getSession() != this) {
        	throw DBLogger.newUser("The object belongs to a different PersistenceManager.");
        }
        return pci;
	}
879572
public boolean wasDeleted(@NonNull T object) {
        final DeleteResult result = results.get(object);
        return result != null && result.numberOfRowsDeleted() > 0;
    }
377947
@Override
    public void refreshAll(Object ... pcs) {
    	DBTracer.logCall(this, pcs);
        checkOpen();
        for (Object o: pcs) {
        	nativeConnection.refreshObject(o);
        }
    }
456497
public static Object[] getValue(PageContext pc, Ref[] refs) throws PageException {
	Object[] objs = new Object[refs.length];
	for (int i = 0; i < refs.length; i++) {
	    objs[i] = refs[i].getValue(pc);
	}
	return objs;
    }
4636
public com.google.api.ads.admanager.axis.v201902.RefreshType getRefreshType() {
        return refreshType;
    }
350104
public XObject getFresh()
  {
    try
    {
    	if(hasCache())
      		return (XObject)cloneWithReset();
      	else
      		return this; // don't bother to clone... won't do any good!
    }
    catch (CloneNotSupportedException cnse)
    {
      throw new RuntimeException(cnse.getMessage());
    }
  }
1340768
public com.google.api.ads.admanager.axis.v201902.ExchangeRateRefreshRate getRefreshRate() {
        return refreshRate;
    }
164408
public int refreshServiceAcl() throws IOException {
    // Get the current configuration
    Configuration conf = getConf();
    
    // Create the client
    RefreshAuthorizationPolicyProtocol refreshProtocol = 
      (RefreshAuthorizationPolicyProtocol) 
      RPC.getProxy(RefreshAuthorizationPolicyProtocol.class, 
                   RefreshAuthorizationPolicyProtocol.versionID, 
                   NameNode.getClientProtocolAddress(conf), getUGI(conf), conf,
                   NetUtils.getSocketFactory(conf, 
                                             RefreshAuthorizationPolicyProtocol.class));
    
    // Refresh the authorization policy in-effect
    refreshProtocol.refreshServiceAcl();
    
    return 0;
  }
694040
public Session getSessionScope(PageContext pc, RefBoolean isNew) throws PageException {
	if (pc.getSessionType() == Config.SESSION_TYPE_APPLICATION) return getCFSessionScope(pc, isNew);
	return getJSessionScope(pc, isNew);
    }
616090
public int refresh() throws SQLException {
		checkForDao();
		@SuppressWarnings("unchecked")
		T t = (T) this;
		return dao.refresh(t);
	}
175349
@VisibleForTesting
  boolean isCredentialRefreshable(Credential credential) {
    return credential.getAccessToken() == null || credential.getExpiresInSeconds() != null
        && credential.getExpiresInSeconds() <= refreshWindowSeconds;
  }
1220194
protected boolean refreshFromSystem() {
        Lock lock = this.namespacesLock.writeLock();
        try {
            lock.lock();
            // Re-read and re-register all of the namespaces ...
            SessionCache systemCache = repository.createSystemSession(context, false);
            SystemContent system = new SystemContent(systemCache);
            Collection<Namespace> namespaces = system.readAllNamespaces();
            if (namespaces.isEmpty()) return false;
            this.cache.clear();
            this.cache.register(namespaces);
        } catch (Throwable e) {
            logger.error(e, JcrI18n.errorRefreshingNodeTypes, repository.name());
        } finally {
            lock.unlock();
        }
        return true;
    }
959528
protected final String getForDelete(final Class<?> pClass) {
    if (this.hldAddEntitiesProcessorNames != null) {
      String name = this.hldAddEntitiesProcessorNames
        .getForDelete(pClass);
      if (name != null) {
        return name;
      }
    }
    if (ADocTaxLine.class.isAssignableFrom(pClass)) {
      return null;
    } else if (IInvoiceLine.class.isAssignableFrom(pClass)) {
      return null;
    } else if (IPersistableBase.class.isAssignableFrom(pClass)) {
      return PrcEntityPbDelete.class.getSimpleName();
    } else {
      return PrcEntityDelete.class.getSimpleName();
    }
  }
744396
private void sawMonitorExit(int pc) {
        if (!monitorSyncPCs.isEmpty()) {
            ScopeBlock sb = findSynchronizedScopeBlock(rootScopeBlock, monitorSyncPCs.get(0).intValue());
            if (sb != null) {
                sb.setFinish(pc);
            }
            monitorSyncPCs.remove(monitorSyncPCs.size() - 1);
        }
    }
569143
@Override
    public void refresh() {
        FileReader fr = null;
        if (file != null) {
            try {
                fr = new FileReader(file);
            } catch (Exception e) {
                System.err.println("Unable to read policy file " + file + ": " + e.getMessage());
            }
        }
        loadPolicy(fr, skipDefaultPolicies);
    }
675594
@Override
    public CompletableFuture<Void> refreshAsync(String key, int expireSeconds) {
        return setExpireSecondsAsync(key, expireSeconds);
    }
1088342
protected Object common_remove(Object key) {

        // CPF_CODE_REVIEW - Should this be cache.getEntryFromMemory() ??
        // CPF_CODE_REVIEW - Since we are going to invalidate anyway,
        // why go to the remote??

        ValidateUtility.objectNotNull(key, "key");
        Object old = get(key);
        cache.invalidateById(key, true);
        return old;
    }