Example usage for org.apache.commons.lang SerializationUtils clone

List of usage examples for org.apache.commons.lang SerializationUtils clone

Introduction

In this page you can find the example usage for org.apache.commons.lang SerializationUtils clone.

Prototype

public static Object clone(Serializable object) 

Source Link

Document

Deep clone an Object using serialization.

This is many times slower than writing clone methods by hand on all objects in your object graph.

Usage

From source file:org.jannocessor.model.util.ModelUtils.java

@SuppressWarnings("unchecked")
public static <T extends Serializable> T copy(T model) {
    T clone = (T) SerializationUtils.clone(model);

    if (!model.equals(clone) || !clone.equals(model)) {
        throw new IllegalStateException("Couldn't create a correct copy!");
    }// w w  w . j ava 2  s  .  co m

    return clone;
}

From source file:org.jlibrary.client.export.freemarker.FreemarkerExportFilter.java

/**
 * @see org.jlibrary.client.export.ExportFilter#filter(org.jlibrary.core.entities.Repository)
 *///from   ww w  .  ja v a2s .  c  o m
public Repository filter(Repository repository) {

    Repository newRepository = (Repository) SerializationUtils.clone(repository);

    // transient
    newRepository.setServerProfile(repository.getServerProfile());

    filterPaths(newRepository.getRoot());
    reorderNodes(newRepository.getRoot());

    Category unknown = RepositoryHelper.findUnknownCategory(newRepository);

    unknown.setName(Messages.getMessage(Category.UNKNOWN_NAME));
    unknown.setDescription(Messages.getMessage(Category.UNKNOWN_DESCRIPTION));

    return newRepository;
}

From source file:org.jlibrary.client.export.freemarker.FreemarkerExportFilter.java

/**
 * @see org.jlibrary.client.export.ExportFilter#filter(org.jlibrary.core.entities.Node)
 *//*from w w  w.  j  ava2s  .  co m*/
public Node filter(Node node) {

    Node newNode = (Node) SerializationUtils.clone(node);
    filterPaths(newNode);
    return node;
}

From source file:org.jlibrary.client.ui.ccp.NodePaster.java

private Document createDocumentCopy(Ticket ticket, Document document) {

    Document newDocument = (Document) SerializationUtils.clone(document);

    // clean//from  w ww .  j  ava 2s. c o m
    newDocument.setId(null);
    newDocument.getMetaData().setId(null);
    newDocument.setResourceNodes(new TreeSet());

    return newDocument;
}

From source file:org.lexevs.dao.database.utility.DaoUtility.java

@SuppressWarnings("unchecked")
public static <T extends Serializable> T deepClone(T obj) {
    return (T) SerializationUtils.clone(obj);
}

From source file:org.LexGrid.LexBIG.caCore.dao.orm.LexEVSDAOImpl.java

protected Response query(Request request, DetachedCriteria obj, boolean lazyLoad, int maxResult)
        throws Exception {
    Response rsp = new Response();
    log.info("Detached Criteria Query :" + obj.toString());

    if (request.getIsCount() != null && request.getIsCount()) {
        obj = (DetachedCriteria) SerializationUtils.clone(obj);

        HibernateCallback callBack = getExecuteCountCriteriaHibernateCallback(obj);
        Integer rowCount = (Integer) getHibernateTemplate().execute(callBack);
        log.debug("DetachedCriteria ORMDAOImpl ===== count = " + rowCount);
        rsp.setRowCount(rowCount);/*from  w  ww.j a  va  2  s.  c  o  m*/
    } else {
        HibernateCallback callBack = getExecuteFindQueryCriteriaHibernateCallback(obj, lazyLoad,
                request.getFirstRow() == null ? -1 : request.getFirstRow(),
                maxResult > 0 ? maxResult : this.getResultCountPerQuery());
        List rs = (List) getHibernateTemplate().execute(callBack);
        rsp.setRowCount(rs.size());
        rsp.setResponse(rs);
    }

    return rsp;
}

From source file:org.opendaylight.controller.cluster.access.commands.AbstractLocalTransactionRequestTest.java

@Override
@Test(expected = UnsupportedOperationException.class)
public void serializationTest() {
    SerializationUtils.clone(object());
}

From source file:org.opendaylight.controller.cluster.access.commands.AbstractRequestFailureTest.java

@SuppressWarnings("unchecked")
@Test// www  .j a  v  a2  s  .c  om
public void serializationTest() {
    final Object deserialize = SerializationUtils.clone(object());

    Assert.assertEquals(object().getTarget(), ((T) deserialize).getTarget());
    Assert.assertEquals(object().getVersion(), ((T) deserialize).getVersion());
    Assert.assertEquals(object().getSequence(), ((T) deserialize).getSequence());
}

From source file:org.opendaylight.controller.cluster.access.commands.AbstractRequestSuccessTest.java

@SuppressWarnings("unchecked")
@Test/*  www . j  a v  a2 s  . co m*/
public void serializationTest() {
    final Object deserialize = SerializationUtils.clone(object());

    Assert.assertEquals(object().getTarget(), ((T) deserialize).getTarget());
    Assert.assertEquals(object().getVersion(), ((T) deserialize).getVersion());
    Assert.assertEquals(object().getSequence(), ((T) deserialize).getSequence());
    doAdditionalAssertions(deserialize);
}

From source file:org.opendaylight.controller.cluster.datastore.messages.AbortTransactionReplyTest.java

@Test
public void testSerialization() {
    AbortTransactionReply expected = AbortTransactionReply.instance(DataStoreVersions.CURRENT_VERSION);

    Object serialized = expected.toSerializable();
    assertEquals("Serialized type", AbortTransactionReply.class, serialized.getClass());

    AbortTransactionReply actual = (AbortTransactionReply) SerializationUtils.clone((Serializable) serialized);
    assertEquals("getVersion", DataStoreVersions.CURRENT_VERSION, actual.getVersion());
}