protected <P extends PatchingArtifact.ArtifactState, S extends PatchingArtifact.ArtifactState> boolean processRoot(PatchingArtifact<P, S> artifact, S state, PatchingValidationErrorHandler context) { assert current == null; current = new Node(null, artifact, state, context); try { return doProcess(artifact, state); } finally { // Swap identity for the next patch-id currentIdentity = next; current = null; } }
@Override public <P extends PatchingArtifact.ArtifactState, S extends PatchingArtifact.ArtifactState> boolean process(PatchingArtifact<P, S> artifact, S state) { final Node old = current; current = new Node(old, artifact, state, old.context); try { return doProcess(artifact, state); } finally { current = old; } }
protected <P extends PatchingArtifact.ArtifactState, S extends PatchingArtifact.ArtifactState> boolean processRoot(PatchingArtifact<P, S> artifact, S state, PatchingValidationErrorHandler context) { assert current == null; current = new Node(null, artifact, state, context); try { return doProcess(artifact, state); } finally { // Swap identity for the next patch-id currentIdentity = next; current = null; } }
@Override public <P extends PatchingArtifact.ArtifactState, S extends PatchingArtifact.ArtifactState> boolean process(PatchingArtifact<P, S> artifact, S state) { final Node old = current; current = new Node(old, artifact, state, old.context); try { return doProcess(artifact, state); } finally { current = old; } }