private void checkCurrentTimestamp(LookupTableRowType row) { XMLGregorianCalendar ts = row.getLastChangeTimestamp(); assertNotNull("No last change timestamp in " + row, ts); long diff = System.currentTimeMillis() - XmlTypeConverter.toMillis(ts); assertTrue("Last change timestamp in " + row + " is too old or too new; diff = " + diff, diff >= 0 && diff <= TIMESTAMP_TOLERANCE); }
private static RLookupTableRow toRepo(LookupTableRowType row) throws SchemaException { RLookupTableRow rRow = new RLookupTableRow(); rRow.setId(RUtil.toInteger(row.getId())); if (row.getKey() == null) { throw new SchemaException("Attempt to insert a row with no key"); } rRow.setKey(row.getKey()); rRow.setLabel(RPolyString.copyFromJAXB(row.getLabel())); rRow.setLastChangeTimestamp(row.getLastChangeTimestamp()); if (rRow.getLastChangeTimestamp() == null) { XMLGregorianCalendar cal = XMLGregorianCalendarType.asXMLGregorianCalendar(new Date()); rRow.setLastChangeTimestamp(cal); row.setLastChangeTimestamp(cal); } rRow.setValue(row.getValue()); return rRow; }
private void assertRow(PrismContainerValue<LookupTableRowType> tableContainerValue, String key, String value, PolyStringType label, XMLGregorianCalendar lastChangeTimestamp) { LookupTableRowType row = tableContainerValue.asContainerable(); assertEquals("wrong key", key, row.getKey()); assertEquals("wrong value", value, row.getValue()); assertEquals("wrong label", label, row.getLabel()); assertEquals("wrong lastChangeTimestamp", lastChangeTimestamp, row.getLastChangeTimestamp()); }