本文整理汇总了Java中com.ociweb.pronghorn.stage.scheduling.GraphManager.getStage方法的典型用法代码示例。如果您正苦于以下问题:Java GraphManager.getStage方法的具体用法?Java GraphManager.getStage怎么用?Java GraphManager.getStage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.ociweb.pronghorn.stage.scheduling.GraphManager
的用法示例。
在下文中一共展示了GraphManager.getStage方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: logStageScheduleRates
import com.ociweb.pronghorn.stage.scheduling.GraphManager; //导入方法依赖的package包/类
protected void logStageScheduleRates() {
int totalStages = GraphManager.countStages(gm);
for(int i=1;i<=totalStages;i++) {
PronghornStage s = GraphManager.getStage(gm, i);
if (null != s) {
Object rate = GraphManager.getNota(gm, i, GraphManager.SCHEDULE_RATE, null);
if (null == rate) {
logger.debug("{} is running without breaks",s);
} else {
logger.debug("{} is running at rate of {}",s,rate);
}
}
}
}
示例2: startup
import com.ociweb.pronghorn.stage.scheduling.GraphManager; //导入方法依赖的package包/类
@Override
public void startup() {
super.startup();
percentileValues = new int[Pipe.totalPipes()+1];
trafficValues = new long[Pipe.totalPipes()+1];
int i = inputs.length;
pctFull = new short[i];
hists = new Histogram[i];
while (--i>=0) {
hists[i] = new Histogram(10000,2);
}
position = inputs.length;
observedPipeId = new int[inputs.length];
Arrays.fill(observedPipeId, -1);
observedPipeBytesAllocated = new long[inputs.length];
observedPipeName = new String[inputs.length];
int j = inputs.length;
while (--j>=0) {
int stageId = GraphManager.getRingProducerStageId(graphManager, inputs[j].id);
PronghornStage producer = GraphManager.getStage(graphManager, stageId);
if (producer instanceof PipeMonitorStage) {
PipeMonitorStage p = (PipeMonitorStage)producer;
observedPipeId[j] = p.getObservedPipeId();
observedPipeBytesAllocated[j] = p.getObservedPipeBytesAllocated();
observedPipeName[j] = p.getObservedPipeName();
}
}
}
示例3: testStagesExpectedUseCase
import com.ociweb.pronghorn.stage.scheduling.GraphManager; //导入方法依赖的package包/类
@Test
public void testStagesExpectedUseCase() throws NoSuchMethodException, SecurityException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, InterruptedException {
GraphManager gm = new GraphManager();
ClientAPIFactory.clientAPI(new ClockStageFactory("1000",true,20,60), gm);
//we do not know which id will be given to which stage so walk them all and do the right test for each
int stageId = PronghornStage.totalStages();
while (--stageId>=0) {
PronghornStage stage = GraphManager.getStage(gm, stageId);
if (null!=stage) {
//filter out any stages dedicated to monitoring
if (null == GraphManager.getNota(gm, stage, GraphManager.MONITOR, null)) {
int inputs = GraphManager.getInputPipeCount(gm, stage);
//need array of RingBufferConfig objects.
PipeConfig[] inputConfigs = new PipeConfig[inputs];
int i = inputs;
while (--i>=0) {
inputConfigs[i]=GraphManager.getInputPipe(gm, stage, i).config();
}
int outputs = GraphManager.getOutputPipeCount(gm, stage.stageId);
PipeConfig[] outputConfigs = new PipeConfig[outputs];
i = outputs;
while (--i>=0) {
outputConfigs[i]=GraphManager.getOutputPipe(gm, stage, i).config();
}
//build test instances,are different instances than ones found in the graph.
testSingleStageExpectedUseCase(stage.getClass(),inputConfigs,outputConfigs);
}
}
}
}
示例4: testStagesFuzz
import com.ociweb.pronghorn.stage.scheduling.GraphManager; //导入方法依赖的package包/类
@Test
public void testStagesFuzz() throws NoSuchMethodException, SecurityException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, InterruptedException {
GraphManager gm = new GraphManager();
ClientAPIFactory.clientAPI(new ClockStageFactory("1000",true,20,60), gm);
//
//we do not know which id will be given to which stage so walk them all and do the right test for each
int stageId = PronghornStage.totalStages();
while (--stageId>=0) {
PronghornStage stage = GraphManager.getStage(gm, stageId);
if (null!=stage) {
//filter out any stages dedicated to monitoring
if (null == GraphManager.getNota(gm, stage, GraphManager.MONITOR, null)) {
int inputs = GraphManager.getInputPipeCount(gm, stage);
//need array of RingBufferConfig objects.
PipeConfig[] inputConfigs = new PipeConfig[inputs];
int i = inputs;
while (--i>=0) {
inputConfigs[i]=GraphManager.getInputPipe(gm, stage, i).config();
}
int outputs = GraphManager.getOutputPipeCount(gm, stage.stageId);
PipeConfig[] outputConfigs = new PipeConfig[outputs];
i = outputs;
while (--i>=0) {
outputConfigs[i]=GraphManager.getOutputPipe(gm, stage, i).config();
}
//build test instances,are different instances than ones found in the graph.
testSingleStageFuzz(stage.getClass(),inputConfigs,outputConfigs);
}
}
}
}
示例5: graphTest
import com.ociweb.pronghorn.stage.scheduling.GraphManager; //导入方法依赖的package包/类
@Test
public void graphTest() {
//This test may not be needed in the future with the graph if generated directly from the DOT file.
GraphManager gm = new GraphManager();
ClientAPIFactory.clientAPI(new ClockStageFactory("1000",true,20,60), gm);
assertEquals("API and IdGen should be the only producers",2, gm.countStagesWithNotaKey(gm, GraphManager.PRODUCER));
//we do not know which id will be given to which stage so walk them all and do the right test for each
int stageId = GraphManager.countStages(gm);
while (--stageId>=0) {
PronghornStage stage = GraphManager.getStage(gm, stageId);
//filter out any stages dedicated to monitoring
if (null == GraphManager.getNota(gm, stage, GraphManager.MONITOR, null)) {
if (stage instanceof ConnectionStage) {
assertEquals("from API to Connection ",ClockStage.class, GraphManager.getRingProducer(gm, GraphManager.getInputPipe(gm, stage, 1).id).getClass());
assertEquals("from Connection to API ",ClockStage.class, GraphManager.getRingConsumer(gm, GraphManager.getOutputPipe(gm, stage, 1).id).getClass());
assertEquals("from Connection to IdGen ",IdGenStage.class, GraphManager.getRingConsumer(gm, GraphManager.getOutputPipe(gm, stage, 2).id).getClass());
} else if (stage instanceof APIStage) {
assertEquals("from IdGen to API ",IdGenStage.class, GraphManager.getRingProducer(gm, GraphManager.getInputPipe(gm, stage, 1).id).getClass());
assertEquals("from Connection to API ",ConnectionStage.class, GraphManager.getRingProducer(gm, GraphManager.getInputPipe(gm, stage, 2).id).getClass());
assertEquals("from API to Connection ",ConnectionStage.class, GraphManager.getRingConsumer(gm, GraphManager.getOutputPipe(gm, stage, 1).id).getClass());
} else if (stage instanceof IdGenStage) {
assertEquals("from Connection to IdGen ",ConnectionStage.class, GraphManager.getRingProducer(gm, GraphManager.getInputPipe(gm, stage, 1).id).getClass());
assertEquals("from IdGen to API ",ClockStage.class, GraphManager.getRingConsumer(gm, GraphManager.getOutputPipe(gm, stage, 1).id).getClass());
} else {
fail("Unknown stage :"+stage.getClass().getSimpleName());
}
}
}
}