FREEMARKER-55: moving #getLastPredefinedNamedArgumentIndex() to CallableUtils
Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/ce78134e Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/ce78134e Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/ce78134e Branch: refs/heads/3 Commit: ce78134ece2ad0df653538ebdd244bd0a5806679 Parents: ba39a0b Author: Woonsan Ko <woon...@apache.org> Authored: Fri Jan 5 14:20:40 2018 -0500 Committer: Woonsan Ko <woon...@apache.org> Committed: Fri Jan 5 14:20:40 2018 -0500 ---------------------------------------------------------------------- .../apache/freemarker/core/util/CallableUtils.java | 14 ++++++++++++++ .../apache/freemarker/core/util/StringToIndexMap.java | 4 ++-- ...actDataBoundFormElementTemplateDirectiveModel.java | 14 -------------- .../AbstractHtmlElementTemplateDirectiveModel.java | 4 ++-- ...bstractHtmlInputElementTemplateDirectiveModel.java | 4 ++-- .../spring/model/form/FormTemplateDirectiveModel.java | 4 ++-- .../model/form/InputTemplateDirectiveModel.java | 4 ++-- 7 files changed, 24 insertions(+), 24 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-core/src/main/java/org/apache/freemarker/core/util/CallableUtils.java ---------------------------------------------------------------------- diff --git a/freemarker-core/src/main/java/org/apache/freemarker/core/util/CallableUtils.java b/freemarker-core/src/main/java/org/apache/freemarker/core/util/CallableUtils.java index e0d371f..f200171 100644 --- a/freemarker-core/src/main/java/org/apache/freemarker/core/util/CallableUtils.java +++ b/freemarker-core/src/main/java/org/apache/freemarker/core/util/CallableUtils.java @@ -1056,6 +1056,20 @@ public final class CallableUtils { } } + /** + * Returns the argument index of the last predefined named argument item in the {@code argsLayout}. + * <P> + * <EM>Note:</EM> It is strongly assumed that the predefined named arguments map contains only items with indexes, + * starting from the predefined positional argument count and incrementing by one sequentially. + * </P> + * @param argsLayout arguments layout + * @return the argument index of the last predefined named argument item in the {@code argsLayout} + */ + public static int getLastPredefinedNamedArgumentIndex(ArgumentArrayLayout argsLayout) { + return argsLayout.getPredefinedPositionalArgumentCount() + argsLayout.getPredefinedNamedArgumentsMap().size() + - 1; + } + private static Object[] getMessagePartExpectedNArgumentButHadM(int argCnt, int minCnt, int maxCnt) { ArrayList<Object> desc = new ArrayList<>(20); http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-core/src/main/java/org/apache/freemarker/core/util/StringToIndexMap.java ---------------------------------------------------------------------- diff --git a/freemarker-core/src/main/java/org/apache/freemarker/core/util/StringToIndexMap.java b/freemarker-core/src/main/java/org/apache/freemarker/core/util/StringToIndexMap.java index 79dbabf..a2248b1 100644 --- a/freemarker-core/src/main/java/org/apache/freemarker/core/util/StringToIndexMap.java +++ b/freemarker-core/src/main/java/org/apache/freemarker/core/util/StringToIndexMap.java @@ -142,7 +142,7 @@ public final class StringToIndexMap { public static StringToIndexMap of(StringToIndexMap baseMap, Entry... additionalEntries) { final int additionalEntriesLength = (additionalEntries != null) ? additionalEntries.length : 0; List<Entry> newEntries = new ArrayList<>(baseMap.size() + additionalEntriesLength); - baseMap.collectAllEntriesTo(newEntries); + baseMap.collectAllEntriesInto(newEntries); for (int i = 0; i < additionalEntriesLength; i++) { newEntries.add(additionalEntries[i]); } @@ -357,7 +357,7 @@ public final class StringToIndexMap { /** * Traverse all the entries and collect all into the given {@code targetEntryCollection}. */ - private void collectAllEntriesTo(Collection<Entry> targetEntryCollection) { + private void collectAllEntriesInto(Collection<Entry> targetEntryCollection) { if (buckets == null) { return; } http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractDataBoundFormElementTemplateDirectiveModel.java ---------------------------------------------------------------------- diff --git a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractDataBoundFormElementTemplateDirectiveModel.java b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractDataBoundFormElementTemplateDirectiveModel.java index ce37d88..faa8e78 100644 --- a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractDataBoundFormElementTemplateDirectiveModel.java +++ b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractDataBoundFormElementTemplateDirectiveModel.java @@ -53,20 +53,6 @@ abstract class AbstractDataBoundFormElementTemplateDirectiveModel extends Abstra private static final String ID_PARAM_NAME = ID_ATTR_NAME; - /** - * Returns the argument index of the last predefined named argument item in the {@code argsLayout}. - * <P> - * <EM>Note:</EM> It is strongly assumed that the predefined named arguments map contains only items with indexes, - * starting from the predefined positional argument count and incrementing by one sequentially. - * </P> - * @param argsLayout arguments layout - * @return the argument index of the last predefined named argument item in the {@code argsLayout} - */ - protected static int getLastPredefinedNamedArgumentIndex(ArgumentArrayLayout argsLayout) { - return argsLayout.getPredefinedPositionalArgumentCount() + argsLayout.getPredefinedNamedArgumentsMap().size() - - 1; - } - protected static final ArgumentArrayLayout ARGS_LAYOUT = ArgumentArrayLayout.create( 1, http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlElementTemplateDirectiveModel.java ---------------------------------------------------------------------- diff --git a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlElementTemplateDirectiveModel.java b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlElementTemplateDirectiveModel.java index 28f8f07..a29ca0f 100644 --- a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlElementTemplateDirectiveModel.java +++ b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlElementTemplateDirectiveModel.java @@ -48,8 +48,8 @@ import org.springframework.web.servlet.support.RequestContext; abstract class AbstractHtmlElementTemplateDirectiveModel extends AbstractDataBoundFormElementTemplateDirectiveModel { - private static final int NAMED_ARGS_OFFSET = - getLastPredefinedNamedArgumentIndex(AbstractDataBoundFormElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; + private static final int NAMED_ARGS_OFFSET = CallableUtils + .getLastPredefinedNamedArgumentIndex(AbstractDataBoundFormElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; private static final int CSS_CLASS_PARAM_IDX = NAMED_ARGS_OFFSET; private static final String CSS_CLASS_PARAM_NAME = "cssClass"; http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlInputElementTemplateDirectiveModel.java ---------------------------------------------------------------------- diff --git a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlInputElementTemplateDirectiveModel.java b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlInputElementTemplateDirectiveModel.java index baee0d5..8de04b4 100644 --- a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlInputElementTemplateDirectiveModel.java +++ b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/AbstractHtmlInputElementTemplateDirectiveModel.java @@ -37,8 +37,8 @@ import org.springframework.web.servlet.support.RequestContext; abstract class AbstractHtmlInputElementTemplateDirectiveModel extends AbstractHtmlElementTemplateDirectiveModel { - private static final int NAMED_ARGS_OFFSET = - getLastPredefinedNamedArgumentIndex(AbstractHtmlElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; + private static final int NAMED_ARGS_OFFSET = CallableUtils + .getLastPredefinedNamedArgumentIndex(AbstractHtmlElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; private static final int ONFOCUS_PARAM_IDX = NAMED_ARGS_OFFSET; private static final String ONFOCUS_PARAM_NAME = "onfocus"; http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/FormTemplateDirectiveModel.java ---------------------------------------------------------------------- diff --git a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/FormTemplateDirectiveModel.java b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/FormTemplateDirectiveModel.java index 985cb7d..ebfd4c6 100644 --- a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/FormTemplateDirectiveModel.java +++ b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/FormTemplateDirectiveModel.java @@ -75,8 +75,8 @@ class FormTemplateDirectiveModel extends AbstractHtmlElementTemplateDirectiveMod public static final String NAME = "form"; - private static final int NAMED_ARGS_OFFSET = - getLastPredefinedNamedArgumentIndex(AbstractHtmlElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; + private static final int NAMED_ARGS_OFFSET = CallableUtils + .getLastPredefinedNamedArgumentIndex(AbstractHtmlElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; private static final int ACTION_PARAM_IDX = NAMED_ARGS_OFFSET; private static final String ACTION_PARAM_NAME = "action"; http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/ce78134e/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/InputTemplateDirectiveModel.java ---------------------------------------------------------------------- diff --git a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/InputTemplateDirectiveModel.java b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/InputTemplateDirectiveModel.java index 67f63be..d2a3fff 100644 --- a/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/InputTemplateDirectiveModel.java +++ b/freemarker-spring/src/main/java/org/apache/freemarker/spring/model/form/InputTemplateDirectiveModel.java @@ -69,8 +69,8 @@ class InputTemplateDirectiveModel extends AbstractHtmlInputElementTemplateDirect public static final String NAME = "input"; - private static final int NAMED_ARGS_OFFSET = - getLastPredefinedNamedArgumentIndex(AbstractHtmlInputElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; + private static final int NAMED_ARGS_OFFSET = CallableUtils + .getLastPredefinedNamedArgumentIndex(AbstractHtmlInputElementTemplateDirectiveModel.ARGS_LAYOUT) + 1; private static final int SIZE_PARAM_IDX = NAMED_ARGS_OFFSET; private static final String SIZE_PARAM_NAME = "size";