org.nakedobjects.runtime.persistence.adaptermanager.AdapterManager类的使用及代码示例

x33g5p2x  于2022-01-17 转载在 其他  
字(7.2k)|赞(0)|评价(0)|浏览(97)

本文整理了Java中org.nakedobjects.runtime.persistence.adaptermanager.AdapterManager类的一些代码示例,展示了AdapterManager类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。AdapterManager类的具体详情如下:
包路径:org.nakedobjects.runtime.persistence.adaptermanager.AdapterManager
类名称:AdapterManager

AdapterManager介绍

[英]Responsible for managing the NakedObjects and Oid for each and every POJO that is being used by the framework.

It provides a consistent set of adapters in memory, providing an NakedObject for the POJOs that are in use ensuring that the same object is not loaded twice into memory.

Each POJO is given an NakedObject so that the framework can work with the POJOs even though it does not understand their types. Each POJO maps to an NakedObject and these are reused.
[中]负责管理框架使用的每个POJO的NakeObject和Oid。
它在内存中提供了一组一致的适配器,为正在使用的POJO提供了一个NakeObject,以确保同一对象不会两次加载到内存中。
每个POJO都有一个NakedObject,这样框架就可以使用POJO,即使它不了解它们的类型。每个POJO映射到一个NakedObject,这些被重用。

代码示例

代码示例来源:origin: org.nakedobjects.core/runtime

public NakedObject getAdapterFor(Object pojo) {
  return getAdapterManager().getAdapterFor(pojo);
}

代码示例来源:origin: org.nakedobjects.core/runtime

private NakedObject adapterFor(final Object object) {
  return getAdapterManager().adapterFor(object);
}

代码示例来源:origin: org.nakedobjects.core/runtime

private void recreateAdapters(ObjectStoreInstances objectStoreInstances) {
  Map<Oid, Object> objectByOidMap = objectStoreInstances.getObjectInstances();
  for (Oid oid : objectStoreInstances.getOids()) {
    // it's important not to "touch" the pojo, not even in log messages.  That's because 
    // the toString() will cause bytecode enhancement to try to resolve references.
    if (LOG.isDebugEnabled()) {
      LOG.debug("recreating adapter: oid=" + oid);
    }
    Object pojo = objectStoreInstances.getPojo(oid);
    NakedObject existingAdapterLookedUpByPojo = getAdapterManager().getAdapterFor(pojo);
    if (existingAdapterLookedUpByPojo != null) {
      // this could happen if we rehydrate a persisted object that depends on another persisted object
      // not yet rehydrated.
      getAdapterManager().removeAdapter(existingAdapterLookedUpByPojo);
    }
    NakedObject existingAdapterLookedUpByOid = getAdapterManager().getAdapterFor(oid);
    ensureThatState(existingAdapterLookedUpByOid, is(nullValue()), "Already have mapping for " + oid);
    NakedObject recreatedAdapter = getHydrator().recreateAdapter(oid, pojo);
    
    Version version = objectStoreInstances.getVersion(oid);
    recreatedAdapter.setOptimisticLock(version);
  }
}

代码示例来源:origin: org.nakedobjects.plugins/dndviewer

public void removeViewsForDisposedObjects() {
  for(NakedObject objectToDispose: getUpdateNotifier().getDisposedObjects()) {
    if (LOG.isDebugEnabled()) {
      LOG.debug("dispose views for " + objectToDispose);
    }
    final Vector<View> viewsForObject = viewListByAdapter.get(objectToDispose);
    if (viewsForObject == null) {
      continue;
    }
    removeViews(viewsForObject);
    final Vector<View> remainingViews = viewListByAdapter.get(objectToDispose);
    if (remainingViews != null && remainingViews.size() > 0) {
      getMessageBroker().addWarning(
          "There are still views (within other views) for the disposed object " + objectToDispose.titleString()
              + ".  Only objects that are shown as root views can be properly disposed of");
    } else {
      getAdapterManager().removeAdapter(objectToDispose);
    }
  }
}

代码示例来源:origin: org.nakedobjects.core/runtime

public NakedObject getAdapterFor(Oid oid) {
  return getAdapterManager().getAdapterFor(oid);
}

代码示例来源:origin: org.nakedobjects.core/runtime

public NakedObject adapterFor(Object pojo, NakedObject ownerAdapter, Identified identified) {
  return getAdapterManager().adapterFor(pojo, ownerAdapter, identified);
}

代码示例来源:origin: org.nakedobjects.plugins/htmlviewer-viewer

public NakedObject getObject() {
  return getAdapterManager().getAdapterFor(oid);
}

代码示例来源:origin: org.nakedobjects.core/runtime

public Object transform(Object object) {
  return getAdapterManager().adapterFor(object);
}

代码示例来源:origin: org.nakedobjects.plugins/html-viewer

public NakedObject getObject() {
  return getAdapterManager().getAdapterFor(oid);
}

代码示例来源:origin: org.nakedobjects.plugins/remoting-clientserver

public NakedObject fromEncodedString(final String encodedData) {
  return getAdapterManager().adapterFor(encodedData);
}

代码示例来源:origin: org.nakedobjects.plugins/htmlviewer-viewer

public void updateVersion() {
  final NakedObject adapter = getAdapterManager().getAdapterFor(oid);
  version = adapter.getVersion();
}

代码示例来源:origin: org.nakedobjects.core/runtime

public NakedObject adapterFor(Object pojo) {
  return getAdapterManager().adapterFor(pojo);
}

代码示例来源:origin: org.nakedobjects.plugins/html-viewer

public void updateVersion() {
  final NakedObject adapter = getAdapterManager().getAdapterFor(oid);
  version = adapter.getVersion();
}

代码示例来源:origin: org.nakedobjects.core/runtime

private NakedObject adapterFor(final Object object) {
  return getAdapterManager().adapterFor(object);
}

代码示例来源:origin: org.nakedobjects.core/runtime

/**
 * If the pojo exists in the object store, then looks up the
 * {@link NakedObject adapter} from the {@link AdapterManager}, and only
 * if none found does it {@link PersistenceSessionHydrator#recreateAdapter(Oid, Object) recreate}
 * a new {@link NakedObject adapter}.
 */
public NakedObject retrieveObject(final Oid oid) {
  final Object pojo = getObjectInstances().get(oid);
  if (pojo == null) {
    return null;
  }
  NakedObject adapterLookedUpByPojo = getAdapterManager().getAdapterFor(pojo);
  if (adapterLookedUpByPojo != null) {
    return adapterLookedUpByPojo;
  }
  NakedObject adapterLookedUpByOid = getAdapterManager().getAdapterFor(oid);
  if (adapterLookedUpByOid != null) {
    return adapterLookedUpByOid;
  }
  return getHydrator().recreateAdapter(oid, pojo);
}

代码示例来源:origin: org.nakedobjects.plugins/htmlviewer-viewer

public NakedObject getCollection(final Context context) {
  final Vector elements = new Vector();
  final Enumeration e = list.elements();
  while (e.hasMoreElements()) {
    final String elementId = (String) e.nextElement();
    final NakedObject adapter = context.getMappedObject(elementId);
    elements.add(adapter.getObject());
  }
  return getAdapterManager().adapterFor(elements);
}

代码示例来源:origin: org.nakedobjects/remoting

public static ConcurrencyException concurrencyException(final ConcurrencyException e) {
  if (LOG.isInfoEnabled()) {
    LOG.info("concurrency conflict: " + e.getMessage());
  }
  final Oid source = e.getSource();
  if (source == null) {
    return e;
  }
  final NakedObject failedObject = getAdapterManager().getAdapterFor(source);
  getPersistenceSession().reload(failedObject);
  return new ConcurrencyException("Object automatically reloaded: " + failedObject.titleString(), e);
}

代码示例来源:origin: org.nakedobjects.plugins/html-viewer

public NakedObject getCollection(final Context context) {
  final Vector elements = new Vector();
  final Enumeration e = list.elements();
  while (e.hasMoreElements()) {
    final String elementId = (String) e.nextElement();
    final NakedObject adapter = context.getMappedObject(elementId);
    elements.add(adapter.getObject());
  }
  return getAdapterManager().adapterFor(elements);
}

代码示例来源:origin: org.nakedobjects.core/remoting

public static ConcurrencyException concurrencyException(final ConcurrencyException e) {
  if (LOG.isInfoEnabled()) {
    LOG.info("concurrency conflict: " + e.getMessage());
  }
  final Oid source = e.getSource();
  if (source == null) {
    return e;
  }
  final NakedObject failedObject = getAdapterManager().getAdapterFor(source);
  getPersistenceSession().reload(failedObject);
  return new ConcurrencyException("Object automatically reloaded: " + failedObject.titleString(), e);
}

代码示例来源:origin: org.nakedobjects.plugins/remoting-clientserver

public NakedObject fromEncodedString(final String encodedData) {
  return getAdapterManager().adapterFor(new String(encodedData));
}

相关文章

微信公众号

最新文章

更多