当前位置: 首页>>代码示例>>Java>>正文


Java MarshallingStrategy类代码示例

本文整理汇总了Java中com.thoughtworks.xstream.MarshallingStrategy的典型用法代码示例。如果您正苦于以下问题:Java MarshallingStrategy类的具体用法?Java MarshallingStrategy怎么用?Java MarshallingStrategy使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MarshallingStrategy类属于com.thoughtworks.xstream包,在下文中一共展示了MarshallingStrategy类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setMarshallingStrategy

import com.thoughtworks.xstream.MarshallingStrategy; //导入依赖的package包/类
@Override
public void setMarshallingStrategy(MarshallingStrategy marshallingStrategy)
{
	this.marshallingStrategy = marshallingStrategy;
	super.setMarshallingStrategy(marshallingStrategy);
}
 
开发者ID:equella,项目名称:Equella,代码行数:7,代码来源:TLEXStream.java

示例2: writeObjects

import com.thoughtworks.xstream.MarshallingStrategy; //导入依赖的package包/类
/**
 * @param writer
 * @param includeHistory
 * @param session
 * @throws DataAccessException
 * @throws HibernateException
 */
private void writeObjects(final Writer writer, final boolean includeHistory, final Session session, final boolean preserveIds)
    throws DataAccessException, HibernateException
    {
  // Container für die Objekte
  final List<Object> all = new ArrayList<Object>();
  final XStream stream = initXStream(session, true);
  final XStream defaultXStream = initXStream(session, false);

  session.flush();
  // Alles laden
  final List<Class< ? >> entities = new ArrayList<Class< ? >>();
  entities.addAll(HibernateEntities.instance().getOrderedEntities());
  entities.addAll(HibernateEntities.instance().getOrderedHistoryEntities());
  for (final Class< ? > entityClass : entities) {
    final String entitySimpleName = entityClass.getSimpleName();
    final String entityType = entityClass.getName();
    if (includeHistory == false && entityType.startsWith("de.micromata.hibernate.history.") == true) {
      // Skip history entries.
      continue;
    }
    List< ? > list = session.createQuery("select o from " + entityType + " o").setReadOnly(true).list();
    list = (List< ? >) CollectionUtils.select(list, PredicateUtils.uniquePredicate());
    final int size = list.size();
    log.info("Writing " + size + " objects");
    for (final Iterator< ? > it = list.iterator(); it.hasNext();) {
      final Object obj = it.next();
      if (log.isDebugEnabled()) {
        log.debug("loaded object " + obj);
      }
      Hibernate.initialize(obj);
      final Class< ? > targetClass = HibernateProxyHelper.getClassWithoutInitializingProxy(obj);
      final ClassMetadata classMetadata = session.getSessionFactory().getClassMetadata(targetClass);
      if (classMetadata == null) {
        log.fatal("Can't init " + obj + " of type " + targetClass);
        continue;
      }
      // initalisierung des Objekts...
      defaultXStream.marshal(obj, new CompactWriter(new NullWriter()));

      if (preserveIds == false) {
        // Nun kann die ID gelöscht werden
        classMetadata.setIdentifier(obj, null, EntityMode.POJO);
      }
      if (log.isDebugEnabled()) {
        log.debug("loading evicted object " + obj);
      }
      if (this.ignoreFromTopLevelListing.contains(targetClass) == false) {
        all.add(obj);
      }
    }
  }
  // und schreiben
  try {
    writer.write("<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n");
  } catch (final IOException ex) {
    // ignore, will fail on stream.marshal()
  }
  log.info("Wrote " + all.size() + " objects");
  final MarshallingStrategy marshallingStrategy = new ProxyIdRefMarshallingStrategy();
  stream.setMarshallingStrategy(marshallingStrategy);
  stream.marshal(all, new PrettyPrintWriter(writer));
    }
 
开发者ID:micromata,项目名称:projectforge-webapp,代码行数:70,代码来源:HibernateXmlConverter.java

示例3: setMarshallingStrategy

import com.thoughtworks.xstream.MarshallingStrategy; //导入依赖的package包/类
public void setMarshallingStrategy(MarshallingStrategy marshallingStrategy) {
    this.marshallingStrategy = marshallingStrategy;
}
 
开发者ID:intrack,项目名称:BoofCV-master,代码行数:4,代码来源:XStreamAppletVersion.java

示例4: setMarshallingStrategy

import com.thoughtworks.xstream.MarshallingStrategy; //导入依赖的package包/类
public void setMarshallingStrategy(MarshallingStrategy marshallingStrategy) {
	this.marshallingStrategy = marshallingStrategy;
}
 
开发者ID:reflexworks,项目名称:reflexcore,代码行数:4,代码来源:XStream.java

示例5: setMarshallingStrategy

import com.thoughtworks.xstream.MarshallingStrategy; //导入依赖的package包/类
/**
 * Set a custom XStream {@link MarshallingStrategy} to use.
 * @since 4.0
 */
public void setMarshallingStrategy(MarshallingStrategy marshallingStrategy) {
	this.marshallingStrategy = marshallingStrategy;
}
 
开发者ID:langtianya,项目名称:spring4-understanding,代码行数:8,代码来源:XStreamMarshaller.java


注:本文中的com.thoughtworks.xstream.MarshallingStrategy类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。