org.glowroot.agent.shaded.io.grpc.BinaryLog Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of glowroot-agent-it-harness Show documentation
Show all versions of glowroot-agent-it-harness Show documentation
Glowroot Agent Integration Test Harness
/*
* Copyright 2018, gRPC 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 org.glowroot.agent.shaded.org.glowroot.agent.it.harness.shaded.io.grpc;
import java.io.Closeable;
/**
* A binary log that can be installed on a channel or server. {@link #close} must be called after
* all the servers and channels associated with the binary log are terminated.
*/
@ExperimentalApi("https://github.com/grpc/grpc-java/issues/4017")
public abstract class BinaryLog implements Closeable {
public abstract ServerMethodDefinition, ?> wrapMethodDefinition(
ServerMethodDefinition oMethodDef);
public abstract Channel wrapChannel(Channel channel);
public static final CallOptions.Key CLIENT_CALL_ID_CALLOPTION_KEY
= CallOptions.Key.create("binarylog-calloptions-key");
/**
* A CallId is two byte[] arrays both of size 8 that uniquely identifies the RPC. Users are
* free to use the byte arrays however they see fit.
*/
public static final class CallId {
public final long hi;
public final long lo;
/**
* Creates an instance.
*/
public CallId(long hi, long lo) {
this.hi = hi;
this.lo = lo;
}
}
}