public String renderWikiMarkup(Issue issue) { RendererManager rendererManager = ComponentManager.getComponent(RendererManager.class); JiraRendererPlugin renderer = rendererManager.getRendererForType("atlassian-wiki-renderer"); String output = renderer.render(issue.description, issue.getIssueRenderContext()); return output; }
private void addComponent(DisplayerType type, LayoutDragComponentGroup group, String name, Class dragClass) { if (rendererManager.isTypeSupported(type)) { group.addLayoutDragComponent(name, lookupDisplayerComponent(dragClass)); } }
public RendererLibrary getRendererForDisplayer(DisplayerSettings target) { // Get the renderer specified if (!StringUtils.isBlank(target.getRenderer())) { RendererLibrary targetRenderer = _getRendererByUUID(target.getRenderer()); if (targetRenderer != null) return targetRenderer; } // Return always the renderer declared as default List<RendererLibrary> renderersSupported = getRenderersForType(target.getType(), target.getSubtype()); RendererLibrary defaultRenderer = getDefaultRenderer(target.getType()); for (RendererLibrary rendererLibrary : renderersSupported) { if (defaultRenderer != null && rendererLibrary.equals(defaultRenderer)) { return defaultRenderer; } } // If no default then return the first supported one if (!renderersSupported.isEmpty()) return renderersSupported.get(0); throw new RuntimeException(i18n.renderermanager_renderer_not_available(target.getType().name())); }
@Test public void testSingleRenderer() { List<RendererLibrary> rendererLibs = Arrays.asList((RendererLibrary) d3Lib); when(rendererManager.getRenderersForType(any(DisplayerType.class), any(DisplayerSubType.class))).thenReturn(rendererLibs); when(rendererManager.getRendererForDisplayer(settings)).thenReturn(d3Lib); presenter.init(settings, RendererSelector.SelectorType.TAB, 300, selectCommand); verify(tabListView).setVisible(false); verify(tabListView, never()).setWidth(anyInt()); verify(tabListView, never()).clearRendererSelector(); verify(tabListView, never()).addRendererItem(anyString()); verify(tabListView, never()).setSelectedRendererIndex(anyInt()); verifyZeroInteractions(listBoxView, radioListView); }
@Test public void testOnSelect() { List<RendererLibrary> rendererLibs = Arrays.asList((RendererLibrary) gwtLib, d3Lib); when(rendererManager.getRenderersForType(any(DisplayerType.class), any(DisplayerSubType.class))).thenReturn(rendererLibs); when(rendererManager.getRendererForDisplayer(settings)).thenReturn(d3Lib); when(rendererManager.getRendererByName(gwtLib.getName())).thenReturn(gwtLib); when(tabListView.getRendererSelected()).thenReturn(gwtLib.getName()); presenter.init(settings, RendererSelector.SelectorType.TAB, 300, selectCommand); presenter.onRendererSelected(); verify(selectCommand).execute(); assertEquals(presenter.getRendererLibrary(), gwtLib); } }
public boolean removeDisplayer(Displayer displayer) { if (displayer == null) { return false; } RendererLibrary renderer = rendererManager.getRendererForDisplayer(displayer.getDisplayerSettings()); List<Displayer> rendererGroup = rendererMap.get(renderer); if (rendererGroup != null) rendererGroup.remove(displayer); return displayerList.remove(displayer); }
public boolean isTypeSupported(DisplayerType type) { return !getRenderersForType(type).isEmpty(); } }
void onRendererSelected() { if (view.getRendererSelected() != null) { rendererLibrary = rendererManager.getRendererByName(view.getRendererSelected()); selectCommand.execute(); } } }
public void setDefaultRenderer(DisplayerType displayerType, String rendererName) { renderersDefault.put(displayerType, getRendererByUUID(rendererName)); }
@Test public void rendererForTypeTest() { List<RendererLibrary> renderers = rendererManager.getRenderers(); assertEquals(totalBeans, renderers.size()); assertEquals(2, rendererManager.getRenderersForType(BARCHART).size()); assertEquals(1, rendererManager.getRenderersForType(AREACHART).size()); }
@Test public void defaultRendererSetByUserTest() { when(rendererSettingsService.userDefaultRenderer()) .thenReturn(REND2_UUID); rendererManager.init(); RendererLibrary barChartDefaultRenderer = rendererManager.getDefaultRenderer(BARCHART); RendererLibrary areaChartDefaultRenderer = rendererManager.getDefaultRenderer(AREACHART); RendererLibrary lineChartDefaultRenderer = rendererManager.getDefaultRenderer(LINECHART); assertEquals(REND2_UUID, barChartDefaultRenderer.getUUID()); assertNotNull(barChartDefaultRenderer); // now rend 2 becomes also default renderer for LINECHART, so it is not null assertNotNull(lineChartDefaultRenderer); // since rend 2 does not support areachart, so rend1 should still be the default renderer for it assertNotNull(areaChartDefaultRenderer); assertEquals(REND1_UUID, areaChartDefaultRenderer.getUUID()); }
@Test public void defaultRendererTest() { assertNotNull(rendererManager.getDefaultRenderer(BARCHART)); assertNull(rendererManager.getDefaultRenderer(LINECHART)); }
@Before public void setUp() { rendererSettingsServiceCaller = new CallerMock<>(rendererSettingsService); rendererManager = new RendererManager(beanManager, rendererSettingsServiceCaller); mockConstants(); Map<DisplayerType, List<DisplayerSubType>> typesAndSubTypes1 = new HashMap<>(); typesAndSubTypes1.put(BARCHART, Arrays.asList(BAR)); typesAndSubTypes1.put(AREACHART, Arrays.asList(AREA)); typesAndSubTypes1.put(LINECHART, Arrays.asList(LINE)); Map<DisplayerType, List<DisplayerSubType>> typesAndSubTypes2 = new HashMap<>(); typesAndSubTypes2.put(LINECHART, Arrays.asList(LINE, SMOOTH)); typesAndSubTypes2.put(BARCHART, Arrays.asList(BAR, BAR_STACKED)); List<SyncBeanDef<RendererLibrary>> rendererLibrariesBeans = Arrays.asList( mockSyncBeanForRendererLib(REND1_NAME, REND1_UUID, Arrays.asList(BARCHART, AREACHART), typesAndSubTypes1), mockSyncBeanForRendererLib(REND2_NAME, REND2_UUID, Collections.emptyList(), typesAndSubTypes2) ); totalBeans = rendererLibrariesBeans.size(); when(beanManager.lookupBeans(RendererLibrary.class)) .thenReturn(rendererLibrariesBeans); rendererManager.init(); }
@Test public void testSingleRenderer() { List<RendererLibrary> rendererLibs = Arrays.asList((RendererLibrary) d3Lib); when(rendererManager.getRenderersForType(any(DisplayerType.class), any(DisplayerSubType.class))).thenReturn(rendererLibs); when(rendererManager.getRendererForDisplayer(settings)).thenReturn(d3Lib); presenter.init(settings, RendererSelector.SelectorType.TAB, 300, selectCommand); verify(tabListView).setVisible(false); verify(tabListView, never()).setWidth(anyInt()); verify(tabListView, never()).clearRendererSelector(); verify(tabListView, never()).addRendererItem(anyString()); verify(tabListView, never()).setSelectedRendererIndex(anyInt()); verifyZeroInteractions(listBoxView, radioListView); }
@Test public void testOnSelect() { List<RendererLibrary> rendererLibs = Arrays.asList((RendererLibrary) gwtLib, d3Lib); when(rendererManager.getRenderersForType(any(DisplayerType.class), any(DisplayerSubType.class))).thenReturn(rendererLibs); when(rendererManager.getRendererForDisplayer(settings)).thenReturn(d3Lib); when(rendererManager.getRendererByName(gwtLib.getName())).thenReturn(gwtLib); when(tabListView.getRendererSelected()).thenReturn(gwtLib.getName()); presenter.init(settings, RendererSelector.SelectorType.TAB, 300, selectCommand); presenter.onRendererSelected(); verify(selectCommand).execute(); assertEquals(presenter.getRendererLibrary(), gwtLib); } }
public boolean removeDisplayer(Displayer displayer) { if (displayer == null) { return false; } RendererLibrary renderer = rendererManager.getRendererForDisplayer(displayer.getDisplayerSettings()); List<Displayer> rendererGroup = rendererMap.get(renderer); if (rendererGroup != null) rendererGroup.remove(displayer); return displayerList.remove(displayer); }
public boolean isTypeSupported(DisplayerType type) { return !getRenderersForType(type).isEmpty(); } }
void onRendererSelected() { if (view.getRendererSelected() != null) { rendererLibrary = rendererManager.getRendererByName(view.getRendererSelected()); selectCommand.execute(); } } }
public void setDefaultRenderer(DisplayerType displayerType, String rendererName) { renderersDefault.put(displayerType, getRendererByUUID(rendererName)); }
@Test public void rendererForTypeTest() { List<RendererLibrary> renderers = rendererManager.getRenderers(); assertEquals(totalBeans, renderers.size()); assertEquals(2, rendererManager.getRenderersForType(BARCHART).size()); assertEquals(1, rendererManager.getRenderersForType(AREACHART).size()); }