Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BuildEventProtocolServer ¶
type BuildEventProtocolServer struct {
// contains filtered or unexported fields
}
func NewBuildEventProtocolServer ¶
func NewBuildEventProtocolServer(env environment.Env) (*BuildEventProtocolServer, error)
func (*BuildEventProtocolServer) PublishBuildToolEventStream ¶
func (s *BuildEventProtocolServer) PublishBuildToolEventStream(stream pepb.PublishBuildEvent_PublishBuildToolEventStreamServer) error
Handles Streaming BuildToolEvent From the bazel client: (Read more in BuildEventServiceUploader.java.) {@link BuildEventServiceUploaderCommands#OPEN_STREAM} is the first event and opens a bidi streaming RPC for sending build events and receiving ACKs. {@link BuildEventServiceUploaderCommands#SEND_REGULAR_BUILD_EVENT} sends a build event to the server. Sending of the Nth build event does does not wait for the ACK of the N-1th build event to have been received. {@link BuildEventServiceUploaderCommands#SEND_LAST_BUILD_EVENT} sends the last build event and half closes the RPC. {@link BuildEventServiceUploaderCommands#ACK_RECEIVED} is executed for every ACK from the server and checks that the ACKs are in the correct order. {@link BuildEventServiceUploaderCommands#STREAM_COMPLETE} checks that all build events have been sent and all ACKs have been received. If not it invokes a retry logic that may decide to re-send every build event for which an ACK has not been received. If so, it adds an OPEN_STREAM event.
func (*BuildEventProtocolServer) PublishLifecycleEvent ¶
func (s *BuildEventProtocolServer) PublishLifecycleEvent(ctx context.Context, req *pepb.PublishLifecycleEventRequest) (*empty.Empty, error)