本文整理汇总了Java中org.apache.tinkerpop.gremlin.process.computer.GraphComputer.Features方法的典型用法代码示例。如果您正苦于以下问题:Java GraphComputer.Features方法的具体用法?Java GraphComputer.Features怎么用?Java GraphComputer.Features使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.tinkerpop.gremlin.process.computer.GraphComputer
的用法示例。
在下文中一共展示了GraphComputer.Features方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: validateProgramOnComputer
import org.apache.tinkerpop.gremlin.process.computer.GraphComputer; //导入方法依赖的package包/类
public static void validateProgramOnComputer(final GraphComputer computer, final VertexProgram vertexProgram) {
if (vertexProgram.getMemoryComputeKeys().contains(null))
throw Memory.Exceptions.memoryKeyCanNotBeNull();
if (vertexProgram.getMemoryComputeKeys().contains(""))
throw Memory.Exceptions.memoryKeyCanNotBeEmpty();
final GraphComputer.Features graphComputerFeatures = computer.features();
final VertexProgram.Features vertexProgramFeatures = vertexProgram.getFeatures();
for (final Method method : VertexProgram.Features.class.getMethods()) {
if (method.getName().startsWith("requires")) {
final boolean supports;
final boolean requires;
try {
supports = (boolean) GraphComputer.Features.class.getMethod(method.getName().replace("requires", "supports")).invoke(graphComputerFeatures);
requires = (boolean) method.invoke(vertexProgramFeatures);
} catch (final Exception e) {
throw new IllegalStateException("A reflection exception has occurred: " + e.getMessage(), e);
}
if (requires && !supports)
throw new IllegalStateException("The vertex program can not be executed on the graph computer: " + method.getName());
}
}
}