diff options
author | Eike Stepper | 2010-01-30 11:47:42 +0000 |
---|---|---|
committer | Eike Stepper | 2010-01-30 11:47:42 +0000 |
commit | 15ef2bea382b50149bdcee5d7129833191b5c09b (patch) | |
tree | a6e659ff73619cc5dde7641435972de48a51375b | |
parent | cc56c47773951f4066b73d6775dbaa30e9caf42c (diff) | |
download | cdo-15ef2bea382b50149bdcee5d7129833191b5c09b.tar.gz cdo-15ef2bea382b50149bdcee5d7129833191b5c09b.tar.xz cdo-15ef2bea382b50149bdcee5d7129833191b5c09b.zip |
[270716] Provide support for branching
https://bugs.eclipse.org/bugs/show_bug.cgi?id=270716
13 files changed, 84 insertions, 57 deletions
diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/branch/CDOBranchPointImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/branch/CDOBranchPointImpl.java index add65719c1..d31d3cb3ec 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/branch/CDOBranchPointImpl.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/branch/CDOBranchPointImpl.java @@ -66,6 +66,6 @@ public class CDOBranchPointImpl implements CDOBranchPoint @Override public String toString() { - return MessageFormat.format("BranchPoint[{0}, {1,date} {1,time}]", branch, timeStamp); + return MessageFormat.format("BranchPoint[{0}, {1,date} {1,time,HH:mm:ss:SSS}]", branch, timeStamp); } } diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/model/CDOPackageUnitImpl.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/model/CDOPackageUnitImpl.java index 6d2841c4a1..430ed1ff2c 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/model/CDOPackageUnitImpl.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/model/CDOPackageUnitImpl.java @@ -4,7 +4,7 @@ * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html - * + * * Contributors: * Eike Stepper - initial API and implementation */ @@ -311,7 +311,7 @@ public class CDOPackageUnitImpl implements InternalCDOPackageUnit @Override public String toString() { - String fmt = "CDOPackageUnit[id={0}, state={1}, type={2}, originalType={3}, timeStamp={4,date} {4,time}]"; //$NON-NLS-1$ + String fmt = "CDOPackageUnit[id={0}, state={1}, type={2}, originalType={3}, timeStamp={4,date} {4,time,HH:mm:ss:SSS}]"; //$NON-NLS-1$ return MessageFormat.format(fmt, getID(), getState(), getType(), getOriginalType(), getTimeStamp()); } diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/cache/lru/LRURevisionCache.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/cache/lru/LRURevisionCache.java index 6b580eb6e8..17567247f2 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/cache/lru/LRURevisionCache.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/internal/common/revision/cache/lru/LRURevisionCache.java @@ -166,8 +166,10 @@ public class LRURevisionCache extends Lifecycle implements InternalCDORevisionCa CheckUtil.checkArg(revision, "revision"); if (TRACER.isEnabled()) { - TRACER.format("Adding revision: {0}, timeStamp={1,date} {1,time}, revised={2,date} {2,time}, historical={3}", //$NON-NLS-1$ - revision, revision.getTimeStamp(), revision.getRevised(), revision.isHistorical()); + TRACER + .format( + "Adding revision: {0}, timeStamp={1,date} {1,time,HH:mm:ss:SSS}, revised={2,date} {2,time,HH:mm:ss:SSS}, historical={3}", //$NON-NLS-1$ + revision, revision.getTimeStamp(), revision.getRevised(), revision.isHistorical()); } int version = revision.getVersion(); diff --git a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/BaseCDORevision.java b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/BaseCDORevision.java index c8c43d05a3..ce2d2567f7 100644 --- a/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/BaseCDORevision.java +++ b/plugins/org.eclipse.emf.cdo.common/src/org/eclipse/emf/cdo/spi/common/revision/BaseCDORevision.java @@ -339,7 +339,7 @@ public abstract class BaseCDORevision extends AbstractCDORevision if (TRACER.isEnabled()) { - TRACER.format("Setting revised {0}: {1,date} {1,time}", this, revised); + TRACER.format("Setting revised {0}: {1,date} {1,time,HH:mm:ss:SSS}", this, revised); } this.revised = revised; diff --git a/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/CDOTimeRequest.java b/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/CDOTimeRequest.java index da187e37c0..173f24ef94 100644 --- a/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/CDOTimeRequest.java +++ b/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/CDOTimeRequest.java @@ -4,7 +4,7 @@ * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html - * + * * Contributors: * Eike Stepper - initial API and implementation **************************************************************************/ @@ -45,7 +45,7 @@ public abstract class CDOTimeRequest<RESULT> extends CDOClientRequest<RESULT> repositoryTimeResult.setRequested(System.currentTimeMillis()); if (TRACER.isEnabled()) { - TRACER.format("Requested: {0,date} {0,time}", repositoryTimeResult.getRequested()); //$NON-NLS-1$ + TRACER.format("Requested: {0,date} {0,time,HH:mm:ss:SSS}", repositoryTimeResult.getRequested()); //$NON-NLS-1$ } } @@ -55,19 +55,19 @@ public abstract class CDOTimeRequest<RESULT> extends CDOClientRequest<RESULT> repositoryTimeResult.setConfirmed(System.currentTimeMillis()); if (TRACER.isEnabled()) { - TRACER.format("Confirmed: {0,date} {0,time}", repositoryTimeResult.getConfirmed()); //$NON-NLS-1$ + TRACER.format("Confirmed: {0,date} {0,time,HH:mm:ss:SSS}", repositoryTimeResult.getConfirmed()); //$NON-NLS-1$ } repositoryTimeResult.setIndicated(in.readLong()); if (TRACER.isEnabled()) { - TRACER.format("Read indicated: {0,date} {0,time}", repositoryTimeResult.getIndicated()); //$NON-NLS-1$ + TRACER.format("Read indicated: {0,date} {0,time,HH:mm:ss:SSS}", repositoryTimeResult.getIndicated()); //$NON-NLS-1$ } repositoryTimeResult.setResponded(in.readLong()); if (TRACER.isEnabled()) { - TRACER.format("Read responded: {0,date} {0,time}", repositoryTimeResult.getResponded()); //$NON-NLS-1$ + TRACER.format("Read responded: {0,date} {0,time,HH:mm:ss:SSS}", repositoryTimeResult.getResponded()); //$NON-NLS-1$ } return null; diff --git a/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/OpenSessionRequest.java b/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/OpenSessionRequest.java index f024685a58..6a8ffbeef0 100644 --- a/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/OpenSessionRequest.java +++ b/plugins/org.eclipse.emf.cdo.net4j/src/org/eclipse/emf/cdo/internal/net4j/protocol/OpenSessionRequest.java @@ -96,13 +96,13 @@ public class OpenSessionRequest extends CDOTimeRequest<OpenSessionResult> long repositoryCreationTime = in.readLong(); if (TRACER.isEnabled()) { - TRACER.format("Read repositoryCreationTime: {0,date} {0,time}", repositoryCreationTime); //$NON-NLS-1$ + TRACER.format("Read repositoryCreationTime: {0,date} {0,time,HH:mm:ss:SSS}", repositoryCreationTime); //$NON-NLS-1$ } long lastUpdateTime = in.readLong(); if (TRACER.isEnabled()) { - TRACER.format("Read lastUpdateTime: {0,date} {0,time}", lastUpdateTime); //$NON-NLS-1$ + TRACER.format("Read lastUpdateTime: {0,date} {0,time,HH:mm:ss:SSS}", lastUpdateTime); //$NON-NLS-1$ } boolean repositorySupportingAudits = in.readBoolean(); diff --git a/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/internal/net4j/protocol/RepositoryTimeIndication.java b/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/internal/net4j/protocol/RepositoryTimeIndication.java index cad2d8187c..7eeb320b49 100644 --- a/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/internal/net4j/protocol/RepositoryTimeIndication.java +++ b/plugins/org.eclipse.emf.cdo.server.net4j/src/org/eclipse/emf/cdo/server/internal/net4j/protocol/RepositoryTimeIndication.java @@ -4,7 +4,7 @@ * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html - * + * * Contributors: * Eike Stepper - initial API and implementation */ @@ -50,13 +50,13 @@ public class RepositoryTimeIndication extends CDOServerIndication long responded = System.currentTimeMillis(); if (TRACER.isEnabled()) { - TRACER.format("Writing indicated: {0,date} {0,time}", indicated); //$NON-NLS-1$ + TRACER.format("Writing indicated: {0,date} {0,time,HH:mm:ss:SSS}", indicated); //$NON-NLS-1$ } out.writeLong(indicated); if (TRACER.isEnabled()) { - TRACER.format("Writing responded: {0,date} {0,time}", responded); //$NON-NLS-1$ + TRACER.format("Writing responded: {0,date} {0,time,HH:mm:ss:SSS}", responded); //$NON-NLS-1$ } out.writeLong(responded); diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java index 03c7cfd26b..5f61b7d089 100644 --- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java +++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/Repository.java @@ -706,15 +706,19 @@ public class Repository extends Container<Object> implements InternalRepository long creationTimeStamp = getCreationTime(); if (timeStamp < creationTimeStamp) { - throw new IllegalArgumentException(MessageFormat.format( - "timeStamp ({0,date} {0,time}) < repository creation time ({1,date} {1,time})", timeStamp, creationTimeStamp)); //$NON-NLS-1$ + throw new IllegalArgumentException( + MessageFormat + .format( + "timeStamp ({0,date} {0,time,HH:mm:ss:SSS}) < repository creation time ({1,date} {1,time,HH:mm:ss:SSS})", timeStamp, creationTimeStamp)); //$NON-NLS-1$ } long currentTimeStamp = getTimeStamp(); if (timeStamp > currentTimeStamp) { - throw new IllegalArgumentException(MessageFormat.format( - "timeStamp ({0,date} {0,time}) > current time ({1,date} {1,time})", timeStamp, currentTimeStamp)); //$NON-NLS-1$ + throw new IllegalArgumentException( + MessageFormat + .format( + "timeStamp ({0,date} {0,time,HH:mm:ss:SSS}) > current time ({1,date} {1,time,HH:mm:ss:SSS})", timeStamp, currentTimeStamp)); //$NON-NLS-1$ } } diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java index 2ca445b29a..5d8ee14e67 100644 --- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java +++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/mem/MEMStore.java @@ -25,6 +25,8 @@ import org.eclipse.emf.cdo.server.IStoreAccessor; import org.eclipse.emf.cdo.server.ITransaction; import org.eclipse.emf.cdo.server.IView; import org.eclipse.emf.cdo.server.StoreThreadLocal; +import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranch; +import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager; import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader; import org.eclipse.emf.cdo.spi.common.revision.DetachedCDORevision; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision; @@ -376,18 +378,21 @@ public class MEMStore extends LongIDStore implements IMEMStore, BranchLoader public Map<CDOBranch, List<CDORevision>> getAllRevisions() { Map<CDOBranch, List<CDORevision>> result = new HashMap<CDOBranch, List<CDORevision>>(); + InternalCDOBranchManager branchManager = getRepository().getBranchManager(); + result.put(branchManager.getMainBranch(), new ArrayList<CDORevision>()); + + for (Integer branchID : branchInfos.keySet()) + { + InternalCDOBranch branch = branchManager.getBranch(branchID); + result.put(branch, new ArrayList<CDORevision>()); + } + for (List<InternalCDORevision> list : revisions.values()) { for (InternalCDORevision revision : list) { CDOBranch branch = revision.getBranch(); List<CDORevision> resultList = result.get(branch); - if (resultList == null) - { - resultList = new ArrayList<CDORevision>(1); - result.put(branch, resultList); - } - resultList.add(revision); } } diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/RevisionManagerTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/RevisionManagerTest.java index 44ab3c1120..5e09543612 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/RevisionManagerTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/RevisionManagerTest.java @@ -11,18 +11,20 @@ package org.eclipse.emf.cdo.tests; import org.eclipse.emf.cdo.common.branch.CDOBranch; -import org.eclipse.emf.cdo.common.branch.CDOBranchManager; import org.eclipse.emf.cdo.common.branch.CDOBranchPoint; import org.eclipse.emf.cdo.common.id.CDOID; import org.eclipse.emf.cdo.common.id.CDOIDUtil; import org.eclipse.emf.cdo.internal.common.revision.CDORevisionImpl; import org.eclipse.emf.cdo.internal.server.mem.MEMStore; import org.eclipse.emf.cdo.server.IRepository; -import org.eclipse.emf.cdo.session.CDOSession; +import org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision; +import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevisionManager; +import org.eclipse.emf.cdo.spi.server.InternalRepository; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EcorePackage; +import org.eclipse.emf.spi.cdo.InternalCDOSession; import java.util.Map; @@ -37,11 +39,15 @@ public class RevisionManagerTest extends AbstractCDOTest private static final int DETACH = -1; + private InternalRepository repository; + private MEMStore store; - private CDOSession session; + private InternalCDOSession session; + + private InternalCDOBranchManager branchManager; - private CDOBranchManager branchManager; + private int branchID; private CDOBranch branch0; @@ -63,6 +69,8 @@ public class RevisionManagerTest extends AbstractCDOTest private InternalCDORevision[] revisions4; + private InternalCDORevisionManager revisionManager; + @Override public Map<String, Object> getTestProperties() { @@ -78,9 +86,12 @@ public class RevisionManagerTest extends AbstractCDOTest skipUnlessConfig(MEM); super.doSetUp(); - store = (MEMStore)getRepository().getStore(); - session = openSession(); + repository = getRepository(); + store = (MEMStore)repository.getStore(); + + session = (InternalCDOSession)openSession(); branchManager = session.getBranchManager(); + branchID = 0; branch0 = branchManager.getMainBranch(); revisions0 = fillBranch(branch0, 10, 10, 20, 50, 20); @@ -94,10 +105,16 @@ public class RevisionManagerTest extends AbstractCDOTest revisions3 = new InternalCDORevision[0]; branch3 = createBranch(revisions1[1]); - revisions4 = createBranch(branch3, 10, 30, DETACH); + revisions4 = createBranch(branch3, branch3.getBase().getTimeStamp() + 10, 30, DETACH); branch4 = revisions4[0].getBranch(); BranchingTest.dump("MEMStore", store.getAllRevisions()); + revisionManager = getRevisionManager(repository, session); + } + + protected InternalCDORevisionManager getRevisionManager(InternalRepository repository, InternalCDOSession session) + { + return repository.getRevisionManager(); } private InternalCDORevision[] fillBranch(CDOBranch branch, long offset, long... durations) @@ -131,7 +148,7 @@ public class RevisionManagerTest extends AbstractCDOTest private InternalCDORevision[] createBranch(CDOBranch baseBranch, long baseTimeStamp, long offset, long... durations) { - CDOBranch branch = baseBranch.createBranch("branch" + (baseBranch.getID() + 1), baseTimeStamp); + CDOBranch branch = baseBranch.createBranch("branch" + ++branchID, baseTimeStamp); return fillBranch(branch, offset, durations); } @@ -146,34 +163,19 @@ public class RevisionManagerTest extends AbstractCDOTest { CDOBranch baseBranch = revision.getBranch(); long baseTimeStamp = getMiddleOfValidity(revision); - return baseBranch.createBranch("branch" + (baseBranch.getID() + 1), baseTimeStamp); + return baseBranch.createBranch("branch" + ++branchID, baseTimeStamp); } - // private CDOBranch createBranch(CDOBranch parent) - // { - // long revised = revision.getRevised(); - // if (revised == CDOBranchPoint.UNSPECIFIED_DATE) - // { - // revised = revision.getTimeStamp() + 10000; - // } - // - // long timeStamp = revision.getTimeStamp() / 2 + revised / 2; - // - // CDOBranch parent = revision.getBranch(); - // CDOBranch branch = parent.createBranch("branch" + (parent.getID() + 1), timeStamp); - // return fillBranch(branch, offset, durations); - // } - private long getMiddleOfValidity(InternalCDORevision revision) { + long timeStamp = revision.getTimeStamp(); long revised = revision.getRevised(); if (revised == CDOBranchPoint.UNSPECIFIED_DATE) { - revised = revision.getTimeStamp() + 10000; + revised = timeStamp + 10000; } - long baseTimeStamp = revision.getTimeStamp() / 2 + revised / 2; - return baseTimeStamp; + return timeStamp / 2 + revised / 2; } @Override @@ -186,4 +188,16 @@ public class RevisionManagerTest extends AbstractCDOTest public void testMissingInBranch0() throws Exception { } + + /** + * @author Eike Stepper + */ + public static class ClientSide extends RevisionManagerTest + { + @Override + protected InternalCDORevisionManager getRevisionManager(InternalRepository repository, InternalCDOSession session) + { + return session.getRevisionManager(); + } + } } diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/CDOEditorInputImpl.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/CDOEditorInputImpl.java index 98e8735802..739d8f8315 100644 --- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/CDOEditorInputImpl.java +++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/CDOEditorInputImpl.java @@ -121,7 +121,7 @@ public class CDOEditorInputImpl extends PlatformObject implements CDOEditorInput long timeStamp = view.getTimeStamp(); if (timeStamp != CDOView.UNSPECIFIED_DATE) { - builder.append(MessageFormat.format(" {0,date} {0,time}", timeStamp)); //$NON-NLS-1$ + builder.append(MessageFormat.format(" {0,date} {0,time,HH:mm:ss:SSS}", timeStamp)); //$NON-NLS-1$ } return builder.toString(); diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java index 76b4e8e761..0840b07ce4 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/view/CDOViewImpl.java @@ -312,8 +312,10 @@ public class CDOViewImpl extends Lifecycle implements InternalCDOView long creationTimeStamp = getSession().getRepositoryInfo().getCreationTime(); if (timeStamp != UNSPECIFIED_DATE && timeStamp < creationTimeStamp) { - throw new IllegalArgumentException(MessageFormat.format( - "timeStamp ({0,date} {0,time}) < repository creation time ({1,date} {1,time})", timeStamp, creationTimeStamp)); //$NON-NLS-1$ + throw new IllegalArgumentException( + MessageFormat + .format( + "timeStamp ({0,date} {0,time,HH:mm:ss:SSS}) < repository creation time ({1,date} {1,time,HH:mm:ss:SSS})", timeStamp, creationTimeStamp)); //$NON-NLS-1$ } if (branchPoint.equals(this.branchPoint)) diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java index 0728f39d07..1f94107e8d 100644 --- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java +++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/spi/cdo/CDOSessionProtocol.java @@ -294,7 +294,7 @@ public interface CDOSessionProtocol extends CDOProtocol, PackageLoader, BranchLo { return MessageFormat .format( - "RepositoryTime[requested={0,date} {0,time}, indicated={1,date} {1,time}, responded={2,date} {2,time}, confirmed={3,date} {3,time}]", + "RepositoryTime[requested={0,date} {0,time,HH:mm:ss:SSS}, indicated={1,date} {1,time,HH:mm:ss:SSS}, responded={2,date} {2,time,HH:mm:ss:SSS}, confirmed={3,date} {3,time,HH:mm:ss:SSS}]", requested, indicated, responded, confirmed); } } |