private String keyForPipelineModelFragment(PipelineModel model, String name) { PipelinePauseInfo pauseInfo = model.getPausedInfo(); return cacheKeyGenerator.generate("view", name, model.getName(), appendLockStatus(model), getPipelineInstanceModelAsKey(model), model.canOperate(), model.canForce(), pauseInfo.isPaused(), pauseInfo.getPauseCause().replaceAll("\\W", ""), pauseInfo.getPauseBy(), model.canAdminister() ); }
@Test public void shouldUnderstandCanOperateAndCanForce() { PipelineModel foo = new PipelineModel("foo", true, true, PipelinePauseInfo.notPaused()); foo.addPipelineInstance(pipelineNamed("foo")); PipelineModel bar = new PipelineModel("bar", false, false, PipelinePauseInfo.notPaused()); bar.addPipelineInstance(pipelineNamed("bar")); PipelineModel baz = new PipelineModel("baz", false, true, PipelinePauseInfo.notPaused()); baz.addPipelineInstance(pipelineNamed("baz")); assertThat(foo.canOperate(), is(true)); assertThat(foo.canForce(), is(true)); assertThat(bar.canOperate(), is(false)); assertThat(bar.canForce(), is(false)); assertThat(baz.canOperate(), is(true)); assertThat(baz.canForce(), is(false)); }
private void populateMissingPipelines(Username username, PipelineGroupModels groupModels, PipelineConfigs group) { String groupName = group.getGroup(); for (PipelineConfig pipelineConfig : group) { if (!groupModels.containsPipeline(groupName, CaseInsensitiveString.str(pipelineConfig.name()))) { PipelineModel latestPipeline = latestPipelineModel(username, CaseInsensitiveString.str(pipelineConfig.name())); if (latestPipeline != null) { groupModels.addPipelineInstance(groupName, latestPipeline.getLatestPipelineInstance(), latestPipeline.canForce(), latestPipeline.canOperate(), latestPipeline.getPausedInfo()); } } } }