正在查看: 逼多多 v3.6.2 应用的 MutableHandlerRegistry.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 逼多多 v3.6.2 应用的 MutableHandlerRegistry.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package io.grpc.util;
import io.grpc.BindableService;
import io.grpc.ExperimentalApi;
import io.grpc.HandlerRegistry;
import io.grpc.MethodDescriptor;
import io.grpc.ServerMethodDefinition;
import io.grpc.ServerServiceDefinition;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
public final class MutableHandlerRegistry extends HandlerRegistry {
private final ConcurrentMap<String, ServerServiceDefinition> services = new ConcurrentHashMap();
public ServerServiceDefinition addService(ServerServiceDefinition serverServiceDefinition) {
return this.services.put(serverServiceDefinition.getServiceDescriptor().getName(), serverServiceDefinition);
}
@Override
@ExperimentalApi("https://github.com/grpc/grpc-java/issues/2222")
public List<ServerServiceDefinition> getServices() {
return Collections.unmodifiableList(new ArrayList(this.services.values()));
}
@Override
public ServerMethodDefinition<?, ?> lookupMethod(String str, String str2) {
ServerServiceDefinition serverServiceDefinition;
String extractFullServiceName = MethodDescriptor.extractFullServiceName(str);
if (extractFullServiceName == null || (serverServiceDefinition = this.services.get(extractFullServiceName)) == null) {
return null;
}
return serverServiceDefinition.getMethod(str);
}
public boolean removeService(ServerServiceDefinition serverServiceDefinition) {
return this.services.remove(serverServiceDefinition.getServiceDescriptor().getName(), serverServiceDefinition);
}
public ServerServiceDefinition addService(BindableService bindableService) {
return addService(bindableService.bindService());
}
}