diff options
author | Klaus Aehlig <aehlig@google.com> | 2017-02-21 11:51:52 +0000 |
---|---|---|
committer | Irina Iancu <elenairina@google.com> | 2017-02-21 13:50:43 +0000 |
commit | 57eec8c33d35336049f11db251d2b87c70661805 (patch) | |
tree | 64e035c087c719b26a958ecdbf2c1522c94ba55f /src/main/java/com/google/devtools/build/lib/events | |
parent | 33751738c77d1ee6a1dffeabcc8007913d7ece65 (diff) |
Add interface for extended reporting of events
Not in all situation, having an EventHandler allows detailed enough
reporting on events during the build. Therefore add a new interface
that additionally allows posting arbitrary objects on the event bus.
--
Change-Id: I6ff3eebcad5f36b52c38d3f7ac20df8af2706821
Reviewed-on: https://cr.bazel.build/8793
PiperOrigin-RevId: 148078891
MOS_MIGRATED_REVID=148078891
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/events')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/events/ExtendedEventHandler.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/events/ExtendedEventHandler.java b/src/main/java/com/google/devtools/build/lib/events/ExtendedEventHandler.java new file mode 100644 index 0000000000..42d3abe6b5 --- /dev/null +++ b/src/main/java/com/google/devtools/build/lib/events/ExtendedEventHandler.java @@ -0,0 +1,28 @@ +// Copyright 2014 The Bazel Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.devtools.build.lib.events; + +/** + * Interface for reporting events during the build. It extends the {@link EventHandler} by also + * allowing posting arbitrary objects on the event bus. + */ +public interface ExtendedEventHandler extends EventHandler { + + /** Interface for declaring events that can be posted via the extended event handler */ + public interface Postable {} + + /** Report arbitrary information over the evnt bus. */ + void post(Postable obj); +} |