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:hudson.plugins.timestamper.io.TimestampsReaderTest.java

private List<Timestamp> readTimestamps() throws Exception {
    List<Timestamp> timestamps = new ArrayList<Timestamp>();
    int iterations = 0;
    while (true) {
        if (serialize) {
            timestampsReader = (TimestampsReader) SerializationUtils.clone(timestampsReader);
        }/*from  w w w. j av  a2  s  .  c o  m*/
        Collection<Timestamp> next;
        if (numToRead == 1) {
            next = timestampsReader.read().asSet();
        } else {
            next = timestampsReader.read(numToRead);
        }
        if (next.isEmpty()) {
            return timestamps;
        }
        timestamps.addAll(next);
        iterations++;
        if (iterations > 10000) {
            throw new IllegalStateException(
                    "time-stamps do not appear to terminate. read so far: " + timestamps);
        }
    }
}

From source file:com.autentia.tnt.businessobject.Organization.java

public void initChanges() {
    this.changes = (Organization) SerializationUtils.clone(this);
}

From source file:hr.fer.zemris.vhdllab.service.hierarchy.HierarchyTest.java

@Test
public void iteratorXUsesYHierarchy() {
    Hierarchy clone = (Hierarchy) SerializationUtils.clone(hierarchy);
    Iterator<HierarchyNode> iterator = clone.iteratorXUsesYHierarchy(null);
    assertEquals(root, iterator.next());
    assertFalse(iterator.hasNext());//from w  w w.  j  av a 2 s  . c o m

    iterator = clone.iteratorXUsesYHierarchy(root);
    assertEquals(left, iterator.next());
    assertEquals(right, iterator.next());
    assertFalse(iterator.hasNext());

    iterator = clone.iteratorXUsesYHierarchy(right);
    assertEquals(rightDep, iterator.next());
    assertFalse(iterator.hasNext());

    iterator = clone.iteratorXUsesYHierarchy(left);
    assertFalse(iterator.hasNext());

    iterator = clone.iteratorXUsesYHierarchy(rightDep);
    assertFalse(iterator.hasNext());
}

From source file:hudson.plugins.timestamper.annotator.TimestampAnnotatorTest.java

@SuppressWarnings({ "rawtypes", "unchecked" })
private List<String> annotate(int offset, ConsoleAnnotator annotator, boolean serializeAnnotator) {
    List<String> result = new ArrayList<String>();
    while (annotator != null && offset < consoleLogLines.size()) {
        MarkupText markupText = new MarkupText(consoleLogLines.get(offset));
        if (serializeAnnotator) {
            annotator = (ConsoleAnnotator) SerializationUtils.clone(annotator);
        }//from   w ww.  j a  v  a  2s.co m
        annotator = annotator.annotate(build, markupText);
        result.add(markupText.toString(false).replace("&lt;", "<"));
        offset += 3 - (offset % 3);
    }
    return result;
}

From source file:hr.fer.zemris.vhdllab.service.hierarchy.HierarchyTest.java

@Test
public void iteratorXUsedByYHierarchy() {
    Hierarchy clone = (Hierarchy) SerializationUtils.clone(hierarchy);
    Iterator<HierarchyNode> iterator = clone.iteratorXUsedByYHierarchy(null);
    assertEquals(left, iterator.next());
    assertEquals(rightDep, iterator.next());
    assertFalse(iterator.hasNext());//from  w w w  .j a  v a  2s. c  o  m

    iterator = clone.iteratorXUsedByYHierarchy(rightDep);
    assertEquals(right, iterator.next());
    assertFalse(iterator.hasNext());

    iterator = clone.iteratorXUsedByYHierarchy(left);
    assertEquals(root, iterator.next());
    assertFalse(iterator.hasNext());

    iterator = clone.iteratorXUsedByYHierarchy(right);
    assertEquals(root, iterator.next());
    assertFalse(iterator.hasNext());

    iterator = clone.iteratorXUsedByYHierarchy(root);
    assertFalse(iterator.hasNext());
}

From source file:net.lmxm.ute.configuration.ConfigurationInterpolator.java

/**
 * Interpolate job values./*from w  w  w.  j  a v a  2  s. com*/
 * 
 * @param originalJob the original job
 * @param configuration the configuration
 * @return the job
 */
public static Job interpolateJobValues(final Job originalJob, final Configuration configuration) {
    final String prefix = "interpolateJobValues() :";

    LOGGER.debug("{} entered, originalJob={}", prefix, originalJob);

    final Job job = (Job) SerializationUtils.clone(originalJob);

    LOGGER.debug("{} cloned job={}", prefix, job);

    final Map<PropertyType, String[]> propertyMaps = generatePropertyMaps(configuration);
    final String[] propertyNames = propertyMaps.get(PropertyType.NAME);
    final String[] propertyValues = propertyMaps.get(PropertyType.VALUE);

    for (final Task task : job.getTasks()) {
        if (task instanceof FileSystemDeleteTask) {
            final FileSystemTargetTask fileSystemDeleteTask = (FileSystemTargetTask) task;

            interpolateFileSystemTarget(fileSystemDeleteTask.getTarget(), propertyNames, propertyValues);
        } else if (task instanceof FindReplaceTask) {
            final FindReplaceTask findReplaceTask = (FindReplaceTask) task;

            interpolateFileSystemTarget(findReplaceTask.getTarget(), propertyNames, propertyValues);
            interpolatePatterns(findReplaceTask.getPatterns(), propertyNames, propertyValues);
        } else if (task instanceof GroovyTask) {
            final GroovyTask groovyTask = (GroovyTask) task;

            interpolateFileSystemTarget(groovyTask.getTarget(), propertyNames, propertyValues);
        } else if (task instanceof HttpDownloadTask) {
            final HttpDownloadTask httpDownloadTask = (HttpDownloadTask) task;

            interpolateHttpSource(httpDownloadTask.getSource(), propertyNames, propertyValues);
            interpolateFileSystemTarget(httpDownloadTask.getTarget(), propertyNames, propertyValues);
            interpolateFiles(httpDownloadTask.getFiles(), propertyNames, propertyValues);
        } else if (task instanceof MavenRepositoryDownloadTask) {
            final MavenRepositoryDownloadTask mavenRepositoryDownloadTask = (MavenRepositoryDownloadTask) task;

            interpolateMavenRepositorySource(mavenRepositoryDownloadTask.getSource(), propertyNames,
                    propertyValues);
            interpolateFileSystemTarget(mavenRepositoryDownloadTask.getTarget(), propertyNames, propertyValues);
            interpolateMavenArtifacts(mavenRepositoryDownloadTask.getArtifacts(), propertyNames,
                    propertyValues);
        } else if (task instanceof SubversionExportTask) {
            final SubversionExportTask subversionExportTask = (SubversionExportTask) task;

            interpolateSubversionRepositorySource(subversionExportTask.getSource(), propertyNames,
                    propertyValues);
            interpolateFileSystemTarget(subversionExportTask.getTarget(), propertyNames, propertyValues);
            interpolateFiles(subversionExportTask.getFiles(), propertyNames, propertyValues);
        } else if (task instanceof SubversionUpdateTask) {
            final SubversionUpdateTask subversionUpdateTask = (SubversionUpdateTask) task;

            interpolateSubversionRepositorySource(subversionUpdateTask.getSource(), propertyNames,
                    propertyValues);
            interpolateFileSystemTarget(subversionUpdateTask.getTarget(), propertyNames, propertyValues);
            interpolateFiles(subversionUpdateTask.getFiles(), propertyNames, propertyValues);
        } else {
            LOGGER.error("{} Unsupported task type {}", prefix, task.getClass());
            throw new ConfigurationException(ExceptionResourceType.UNSUPPORTED_TASK_TYPE, task.getClass());
        }
    }

    LOGGER.debug("{} returning {}", prefix, job);

    return job;
}

From source file:com.autentia.tnt.businessobject.Commissioning.java

public void initChanges() {
    // solo inicializamos los cambios de las relaciones multiples si estamos en estado
    // aceptado o confirmado
    if (this.getStatus() != null && (this.getStatus().equals(CommissioningStatus.ACCEPTED)
            || this.getStatus().equals(CommissioningStatus.CONFIRMED))) {
        // recorremos las relaciones mltiples para que se copien en el clon
        // los objetos y no los proxies de HB
        // accedemos a una propiedad de cada para segurarnos que se carga el obj
        if (this.getProject() != null) {
            this.getProject().getName();
        }//  w  w w  . j  a  v a2 s . c om
        if (this.getCommissioningDelays() != null) {
            for (CommissioningDelay delay : this.getCommissioningDelays()) {
                delay.getId();
            }
        }
        if (this.getCollaboratorsPaymentData() != null) {
            for (CommissioningPaymentData payment : this.getCollaboratorsPaymentData()) {
                // si no recojo el id no se inicializa y luego falla el contains al buscarlo en el manager
                payment.getCollaborator().getId();
                payment.getCollaborator().getName();
                payment.getCommissioning().getId();
            }
        }
        if (this.getRevisers() != null) {
            for (User revisor : this.getRevisers()) {
                revisor.getName();
            }
        }
        if (this.getFiles() != null) {
            for (CommissioningFile file : this.getFiles()) {
                file.getFile();
            }
        }
    }
    this.changes = (Commissioning) SerializationUtils.clone(this);
}

From source file:com.google.cloud.dataflow.sdk.io.PatchedAvroIOTest.java

@Test
@SuppressWarnings("unchecked")
public void testWriteWithSerDeCustomDeflateCodec() throws Exception {
    PatchedAvroIO.Write.Bound<GenericRecord> write = PatchedAvroIO.Write.to("gs://bucket/foo/baz")
            .withCodec(CodecFactory.deflateCodec(9));

    PatchedAvroIO.Write.Bound<GenericRecord> serdeWrite = (PatchedAvroIO.Write.Bound<GenericRecord>) SerializationUtils
            .clone(write);/* ww w.j a va  2 s. com*/

    assertTrue(serdeWrite.getCodec().toString().equals(CodecFactory.deflateCodec(9).toString()));
}

From source file:eu.eexcess.federatedrecommender.evaluation.FederatedRecommenderEvaluationCore.java

public EvaluationResultLists getblockResult(final SecureUserProfileEvaluation evalProfil) {
    final EvaluationResultLists results = new EvaluationResultLists();
    final EvaluationResultLists blockTmpResults = new EvaluationResultLists();
    //EvaluationQuery query = evalManager.getNextQuery(id);
    //evalProfil.contextKeywords.add(new ContextKeyword(query.query));
    //      //BEGIN Partner Selection
    //      ArrayList<PartnerBadge> blockEvalPartners= new ArrayList<PartnerBadge>();
    //      for (PartnerBadge partner : fRCore.getPartnerRegister().getPartners()) {
    //         if(partner.systemId.contains("ZBW"))
    //            blockEvalPartners.add(partner);
    //      }//from w w w .j  a  va  2 s  .co m
    //      ArrayList<PartnerBadge> queryPartner= new ArrayList<PartnerBadge>();
    //      for (PartnerBadge partner : fRCore.getPartnerRegister().getPartners()) {
    //         if(partner.systemId.contains("Mendeley"))
    //            queryPartner.add(partner);
    //      }
    //      //END Partner Selection      

    results.query = evalProfil.getContextKeywordConcatenation();
    results.queryDescription = evalProfil.description;
    evalProfil.picker = "FiFoPicker";

    final SecureUserProfileEvaluation diversityProfile = (SecureUserProfileEvaluation) SerializationUtils
            .clone(evalProfil);
    //      diversityProfile.partnerList=queryPartner;

    Future<Void> diversityFuture = threadPool.submit(new Callable<Void>() {
        @Override
        public Void call() throws Exception {

            diversityProfile.decomposer = "wikipedia";
            EvaluationResultList evaluationResults = (EvaluationResultList) getEvaluationResults(
                    diversityProfile);
            evaluationResults.provider = "Diversity";
            blockTmpResults.results.add(evaluationResults);
            return null;
        }
    });
    final SecureUserProfileEvaluation unmodifiedProfile = (SecureUserProfileEvaluation) SerializationUtils
            .clone(evalProfil);

    Future<Void> unmodifiedFutur = threadPool.submit(new Callable<Void>() {
        @Override
        public Void call() throws Exception {

            unmodifiedProfile.decomposer = "none";
            EvaluationResultList eRL = (EvaluationResultList) getEvaluationResults(unmodifiedProfile);
            eRL.provider = "Basic";
            blockTmpResults.results.add(eRL);
            results.results.add(eRL); //ADDING IT ALLREADY IN THE FINAL RESULT LIST SINCE IT'S THE SECOND RESULT LIST TO PRESENT
            return null;
        }
    });

    final SecureUserProfileEvaluation serendipityProfile = (SecureUserProfileEvaluation) SerializationUtils
            .clone(evalProfil);

    Future<Void> serendipityFutur = threadPool.submit(new Callable<Void>() {
        @Override
        public Void call() throws Exception {
            serendipityProfile.decomposer = "serendipity";
            EvaluationResultList evaluationResults = (EvaluationResultList) getEvaluationResults(
                    serendipityProfile);
            evaluationResults.provider = "Serendipity";
            blockTmpResults.results.add(evaluationResults);
            return null;
        }
    });
    try {
        unmodifiedFutur.get();
        diversityFuture.get();
        serendipityFutur.get();
    } catch (InterruptedException | ExecutionException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    BlockPicker bP = new BlockPicker();
    try {
        results.results.add(bP.pickBlockResults(blockTmpResults, evalProfil.numResults));
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    //      for (EvaluationResultList evalResultList : blockTmpResults.results) {
    //         System.out.println(evalResultList);   
    //      }
    //      

    //      results.results.addAll(blockTmpResults.results);
    return results;
}

From source file:com.google.cloud.dataflow.sdk.io.PatchedAvroIOTest.java

@Test
@SuppressWarnings("unchecked")
public void testWriteWithSerDeCustomXZCodec() throws Exception {
    PatchedAvroIO.Write.Bound<GenericRecord> write = PatchedAvroIO.Write.to("gs://bucket/foo/baz")
            .withCodec(CodecFactory.xzCodec(9));

    PatchedAvroIO.Write.Bound<GenericRecord> serdeWrite = (PatchedAvroIO.Write.Bound<GenericRecord>) SerializationUtils
            .clone(write);//w  w w.  ja  va2s  . c  o  m

    assertTrue(serdeWrite.getCodec().toString().equals(CodecFactory.xzCodec(9).toString()));
}