List of usage examples for org.apache.commons.lang SerializationUtils clone
public static Object clone(Serializable object)
Deep clone an Object
using serialization.
This is many times slower than writing clone methods by hand on all objects in your object graph.
From source file:hr.fer.zemris.vhdllab.service.hierarchy.HierarchyTest.java
@Test public void afterSerialization() { Hierarchy clone = (Hierarchy) SerializationUtils.clone(hierarchy); assertNotNull(clone.getTopLevelNodes()); assertNotNull(clone.getBottomLevelNodes()); Set<HierarchyNode> topLevel = new HashSet<HierarchyNode>(1); topLevel.add(root);/*from ww w . java 2 s .c o m*/ assertEquals(topLevel, clone.getTopLevelNodes()); Set<HierarchyNode> bottomLevel = new HashSet<HierarchyNode>(2); bottomLevel.add(rightDep); bottomLevel.add(left); assertEquals(bottomLevel, clone.getBottomLevelNodes()); }
From source file:hudson.plugins.timestamper.annotator.ConsoleLogParserImplTest.java
private ConsoleLogParserImpl.Result seek(long pos) throws Exception { ConsoleLogParserImpl parser = new ConsoleLogParserImpl(pos); if (serialize) { parser = (ConsoleLogParserImpl) SerializationUtils.clone(parser); }//from www . jav a2s . c o m return parser.seek(build); }
From source file:com.gemstone.gemfire.security.GemFireSecurityExceptionTest.java
public Object clone(final Serializable object) { return SerializationUtils.clone(object); }
From source file:com.autentia.tnt.businessobject.Position.java
public void initChanges() { // 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.getProvince() != null) { this.getProvince().getId(); this.getProvince().getName(); }// w w w.j ava 2 s. c o m for (Tag tag : this.getTags()) { tag.getId(); } this.changes = (Position) SerializationUtils.clone(this); }
From source file:hr.fer.zemris.vhdllab.service.hierarchy.HierarchyTest.java
@Test public void getTopLevelNodes() { Hierarchy clone = (Hierarchy) SerializationUtils.clone(hierarchy); Set<HierarchyNode> topLevelNodes = clone.getTopLevelNodes(); topLevelNodes.add(new HierarchyNode(new File(), null)); assertEquals(topLevelNodes.size(), clone.getTopLevelNodes().size()); }
From source file:com.floreantpos.model.KitchenTicket.java
public static List<KitchenTicket> fromTicket(Ticket ticket) { Map<Printer, KitchenTicket> itemMap = new HashMap<Printer, KitchenTicket>(); List<KitchenTicket> kitchenTickets = new ArrayList<KitchenTicket>(4); Ticket clonedTicket = (Ticket) SerializationUtils.clone(ticket); clonedTicket.setGlobalId(GlobalIdGenerator.generate()); clonedTicket.consolidateTicketItems(); List<TicketItem> ticketItems = clonedTicket.getTicketItems(); if (ticketItems == null) { return kitchenTickets; }/*ww w .ja v a 2 s . co m*/ if (ticket.getOrderType().isAllowSeatBasedOrder()) { Collections.sort(ticketItems, new Comparator<TicketItem>() { @Override public int compare(TicketItem o1, TicketItem o2) { return o1.getId() - o2.getId(); } }); Collections.sort(ticketItems, new Comparator<TicketItem>() { @Override public int compare(TicketItem o1, TicketItem o2) { return o1.getSeatNumber() - o2.getSeatNumber(); } }); } for (TicketItem ticketItem : ticketItems) { if (ticketItem.isPrintedToKitchen() || !ticketItem.isShouldPrintToKitchen()) { continue; } List<Printer> printers = ticketItem.getPrinters(ticket.getOrderType()); if (printers == null) { continue; } for (Printer printer : printers) { KitchenTicket kitchenTicket = itemMap.get(printer); if (kitchenTicket == null) { kitchenTicket = new KitchenTicket(); kitchenTicket.setPrinterGroup(ticketItem.getPrinterGroup()); kitchenTicket.setTicketId(ticket.getId()); kitchenTicket.setCreateDate(new Date()); kitchenTicket.setTicketType(ticket.getTicketType()); if (ticket.getTableNumbers() != null) { kitchenTicket.setTableNumbers(new ArrayList<Integer>(ticket.getTableNumbers())); } kitchenTicket.setServerName(ticket.getOwner().getFirstName()); kitchenTicket.setStatus(KitchenTicketStatus.WAITING.name()); if (StringUtils.isNotEmpty(ticket.getProperty(Ticket.CUSTOMER_NAME))) { kitchenTicket.setCustomerName(ticket.getProperty(Ticket.CUSTOMER_NAME)); } KitchenTicketDAO.getInstance().saveOrUpdate(kitchenTicket); kitchenTicket.setPrinter(printer); itemMap.put(printer, kitchenTicket); } KitchenTicketItem item = new KitchenTicketItem(); item.setTicketItemId(ticketItem.getId()); item.setMenuItemCode(ticketItem.getItemCode()); item.setMenuItemName(ticketItem.getNameDisplay()); if (ticketItem.getMenuItem() == null) { item.setMenuItemGroupName("MISC."); //$NON-NLS-1$ item.setMenuItemGroupId(1001); item.setSortOrder(10001); } else { item.setMenuItemGroupName(ticketItem.getGroupName()); item.setMenuItemGroupId(ticketItem.getMenuItem().getParent().getId()); item.setSortOrder(ticketItem.getMenuItem().getParent().getSortOrder()); } item.setFractionalUnit(ticketItem.isFractionalUnit()); item.setUnitName(ticketItem.getItemUnitName()); if (ticketItem.isFractionalUnit()) { item.setFractionalQuantity(ticketItem.getItemQuantity()); } else { item.setQuantity(ticketItem.getItemCount()); } item.setStatus(KitchenTicketStatus.WAITING.name()); kitchenTicket.addToticketItems(item); ticketItem.setPrintedToKitchen(true); includeModifiers(ticketItem, kitchenTicket); includeCookintInstructions(ticketItem, kitchenTicket); } } Collection<KitchenTicket> values = itemMap.values(); for (KitchenTicket kitchenTicket : values) { kitchenTickets.add(kitchenTicket); String kitchenTicketNumber = ticket.getProperty("KITCHEN_TICKET_NUMBER"); //$NON-NLS-1$ if (kitchenTicketNumber == null) { kitchenTicketNumber = "1"; //$NON-NLS-1$ } else { kitchenTicketNumber = String.valueOf(Integer.valueOf(kitchenTicketNumber) + 1); } ticket.addProperty("KITCHEN_TICKET_NUMBER", kitchenTicketNumber); //$NON-NLS-1$ kitchenTicket.setSequenceNumber(Integer.valueOf(kitchenTicketNumber)); } ticket.markPrintedToKitchen(); return kitchenTickets; }
From source file:hr.fer.zemris.vhdllab.service.workspace.ProjectMetadataTest.java
@Test public void afterSerialization() { metadata = (ProjectMetadata) SerializationUtils.clone(metadata); for (File f : metadata.getFiles()) { assertEquals(hierarchy.getProject(), f.getProject()); }/* w ww. ja v a 2s . com*/ File file = (File) CollectionUtils.get(files, 0); assertTrue( "change in hashCode of a file (added project reference) isn't reflected to the set containing it.", metadata.getFiles().contains(file)); }
From source file:hudson.plugins.timestamper.TimestampFormatterTest.java
private MarkupText markup(MarkupText markupText) { HttpServletRequest request = mock(HttpServletRequest.class); Cookie[] cookies = null;/*w ww. ja v a 2 s .c om*/ if (cookieValues != null) { cookies = new Cookie[cookieValues.size()]; for (int i = 0; i < cookieValues.size(); i++) { cookies[i] = new Cookie("jenkins-timestamper", cookieValues.get(i)); } } when(request.getCookies()).thenReturn(cookies); TimestampFormatter formatter = new TimestampFormatter("HH:mm:ss ", "ss.S ", request); if (serialize) { formatter = (TimestampFormatter) SerializationUtils.clone(formatter); } formatter.markup(markupText, new Timestamp(123, 42000)); return markupText; }
From source file:hr.fer.zemris.vhdllab.service.hierarchy.HierarchyTest.java
@Test public void getBottomLevelNodes() { Hierarchy clone = (Hierarchy) SerializationUtils.clone(hierarchy); Set<HierarchyNode> bottomLevelNodes = clone.getBottomLevelNodes(); bottomLevelNodes.add(new HierarchyNode(new File(), null)); assertEquals(bottomLevelNodes.size(), clone.getBottomLevelNodes().size()); }
From source file:hudson.plugins.timestamper.format.TimestampFormatterImplTest.java
private MarkupText markup(MarkupText markupText, Optional<String> timeZoneId) { TimestampFormatter formatter = new TimestampFormatterImpl("HH:mm:ss ", "ss.S ", timeZoneId, request); if (serialize) { formatter = (TimestampFormatter) SerializationUtils.clone(formatter); }/*from ww w .jav a2 s . co m*/ formatter.markup(markupText, new Timestamp(123, 42000)); return markupText; }