/** * @param macroDefinition macro definition * @return task list name or empty string if no name specified */ public static String getTaskListName(MacroDefinition macroDefinition) { String result = macroDefinition.getParameters().get("title"); if (result == null) result = macroDefinition.getDefaultParameterValue(); return defaultString(result); }
public MacroDefinition migrate(MacroDefinition macro, ConversionContext context) { // convert default url parameters into explicit url parameters to avoid // confusion when there is JQL query with an '=' character (see https://jira.atlassian.com/browse/CONFDEV-5886) Map<String, String> parameters = macro.getParameters(); if (parameters != null) { Set<String> keySet = parameters.keySet(); for (String key : keySet) { if (key.startsWith("http://") || key.startsWith("https://")) { String val = parameters.remove(key); String url = key + '=' + val; parameters.put("url", url); break; } } } return macro; }
public void handle(MacroDefinition macroDefinition) { if (StringUtils.equals("bookmark", macroDefinition.getName())) { parameters.putAll( macroDefinition.getParameters() ); parameters.put("description", macroDefinition.getBodyText()); // TODO: Decide if we really need descriptionExcerpt // parameters.put("descriptionExcerpt", macroDefinition.get); } } }
public MacroDefinition migrate(MacroDefinition macroDefinition, ConversionContext context) { macroDefinition = richTextMacroMigration.migrate(macroDefinition, context); Map<String,String> params = macroDefinition.getParameters(); String paramValue = params.get(AbstractTOCMacro.INCLUDE_PARAM); if (StringUtils.isNotBlank(paramValue)) params.put(AbstractTOCMacro.INCLUDE_PARAM, convertRegex(paramValue)); paramValue = params.get(AbstractTOCMacro.EXCLUDE_PARAM); if (StringUtils.isNotBlank(paramValue)) params.put(AbstractTOCMacro.EXCLUDE_PARAM, convertRegex(paramValue)); macroDefinition.setParameters(params); return macroDefinition; }
@Override public MacroDefinition migrate(MacroDefinition macroDefinition, ConversionContext context) { macroDefinition = richTextMacroMigration.migrate(macroDefinition, context); Map<String,String> params = macroDefinition.getParameters(); String paramValue = params.get(AbstractTOCMacro.INCLUDE_PARAM); if (StringUtils.isNotBlank(paramValue)) params.put(AbstractTOCMacro.INCLUDE_PARAM, convertRegex(paramValue)); paramValue = params.get(AbstractTOCMacro.EXCLUDE_PARAM); if (StringUtils.isNotBlank(paramValue)) params.put(AbstractTOCMacro.EXCLUDE_PARAM, convertRegex(paramValue)); macroDefinition.setParameters(params); return macroDefinition; }
public MacroDefinition migrate(MacroDefinition macroDefinition, ConversionContext conversionContext) { Map<String, String> macroParameters = macroDefinition.getParameters(); if (macroParameters.containsKey("reverseSort")) { Map<String, String> modifiedMacroParameters = new HashMap<>(macroDefinition.getParameters()); modifiedMacroParameters.remove("reverseSort"); modifiedMacroParameters.put("reverse", "true"); final MacroDefinitionBuilder builder = MacroDefinition.builder(macroDefinition.getName()) .withMacroBody(macroDefinition.getBody()) .withParameters(modifiedMacroParameters); builder.setDefaultParameterValue(macroDefinition.getDefaultParameterValue()); return builder.build(); } return macroDefinition; } }
String xhtml = BooleanUtils.toBoolean(macroDefinition.getParameters().get("htmlbody")) // Parameter 'htmlbody' is passed via UpdateBookmarkAction ? htmlToXmlConverter.convert(bodyText) : xhtmlContent.convertWikiToStorage(bodyText, conversionContext, conversionErrors);
public MacroDefinition migrate(MacroDefinition macroDefinition, ConversionContext conversionContext) { final String bodyText = macroDefinition.getBodyText(); if (StringUtils.isNotBlank(bodyText)) { macroDefinition.setParameters( new HashMap<String, String>(macroDefinition.getParameters()) { { put("url", StringUtils.strip(bodyText)); } } ); } return macroDefinition; } }
new HashMap<String, String>(macroDefinition.getParameters())
public void handle(MacroDefinition macroDefinition) { if (result != null) return; if (TaskListMacro.MACRO_NAME.equals(macroDefinition.getName())) { String taskListName = TaskListUtil.getTaskListName(macroDefinition); /** * Check name match first */ if (!taskListId.getListName().equals(taskListName)) return; /** * If name matches, check if its the correct occurrence of the task list (if there are multiple task lists on the page with the same name) */ Integer occurrence = taskListNameToOccurrence.get(taskListName); if (occurrence == null) { occurrence = 1; taskListNameToOccurrence.put(taskListName, occurrence); } else { occurrence += 1; taskListNameToOccurrence.put(taskListName, occurrence); } if (taskListId.getOccurrence() != occurrence) return; TaskList taskListResult = taskListDeserializer.deserialize(taskListId.getListName(), taskListId.getOccurrence(), macroDefinition.getParameters(), macroDefinition.getBodyText()); taskListResult.setSourceMacro(TaskListMacro.MACRO_NAME); result = taskListResult; } }
private String getCql(MacroDefinition macro, ConversionContext context) { LabelParameter labelParam = new LabelParameter(); labelParam.setValidate(false); labelParam.addParameterAlias(""); // the unnamed parameter - very legacy. ContentTypeParameter contentTypeParam = new ContentTypeParameter(); // The space param must have the same settings as the old one in LabelledContentMacro. SpaceKeyParameter spaceKeyParam = new SpaceKeyParameter(); spaceKeyParam.addParameterAlias("key"); spaceKeyParam.setDefaultValue("@all"); AuthorParameter authorParam = new AuthorParameter(); LegacyParameterConverter converter = new LegacyParameterConverter(getI18nBeanFactory().getI18NBean(), spaceKeyParam, labelParam, authorParam, contentTypeParam); PageContext pageContext = context.getPageContext(); Map<String, String> parameters = macro.getParameters(); MacroExecutionContext macroContext = new MacroExecutionContext(parameters, null, pageContext); try { return converter.buildQueryStringFromLegacyParameters(parameters, macroContext); } catch (MacroException e) { // Will only happen if no label param saved - this will be pointed out in the e message. log.debug("Exception thrown when migrating parameters to CQL", e); throw new IllegalArgumentException("Unable to migrate contentbylabel parameters", e); } }
public MacroDefinition update(MacroDefinition macroDefinition) { taskListMacroDefinitionHandler.handle(macroDefinition); if (!taskListUpdated && taskListMacroDefinitionHandler.getMatchingTaskList() != null) { MacroBody macroBody = new PlainTextMacroBody(taskListSerializer.serialize(updatedTaskList)); MacroDefinitionBuilder updatedMacroDefinition = MacroDefinition.builder(macroDefinition.getName()) .withMacroBody(macroBody) .withParameters(macroDefinition.getParameters()); updatedMacroDefinition.setDefaultParameterValue(macroDefinition.getDefaultParameterValue()); taskListUpdated = true; return updatedMacroDefinition.build(); } return macroDefinition; } }