@NotNull @Override public String getJcrName(@NotNull String oakName) { return nameMapper.getJcrName(oakName); }
@Override public boolean name(String name, int index) { String p = nameMapper.getJcrName(name); if (index == 0) { elements.add(p); } else { elements.add(p + '[' + index + ']'); } return true; } };
@Override public boolean name(String name, int index) { String p = nameMapper.getJcrName(name); if (index == 0) { elements.add(p); } else { elements.add(p + '[' + index + ']'); } return true; } };
@Nonnull @Override public String getJcrName(@Nonnull String oakName) { return nameMapper.getJcrName(oakName); }
@NotNull @Override public String getJcrName(@NotNull String oakName) { return nameMapper.getJcrName(oakName); }
@Override public boolean name(String name, int index) { String p = nameMapper.getJcrName(name); if (index == 0) { elements.add(p); } else { elements.add(p + '[' + index + ']'); } return true; } };
/** * Like {@link NameMapper#getJcrName(String)}, but allows the given Oak * name to be {@code null}, in which case the return value is also * {@code null}. Useful for the template implementations where * {@code null} values are used to indicate undefined attributes. * * @param oakName Oak name, or {@code null} * @return JCR name, or {@code null} */ @Nullable protected String getJcrNameAllowNull(@Nullable String oakName) { if (oakName != null) { return mapper.getJcrName(oakName); } else { return null; } }
/** * Like {@link NameMapper#getJcrName(String)}, but allows the given Oak * name to be {@code null}, in which case the return value is also * {@code null}. Useful for the template implementations where * {@code null} values are used to indicate undefined attributes. * * @param oakName Oak name, or {@code null} * @return JCR name, or {@code null} */ @Nullable protected String getJcrNameAllowNull(@Nullable String oakName) { if (oakName != null) { return mapper.getJcrName(oakName); } else { return null; } }
/** * Like {@link NameMapper#getJcrName(String)}, but allows the given Oak * name to be {@code null}, in which case the return value is also * {@code null}. Useful for the template implementations where * {@code null} values are used to indicate undefined attributes. * * @param oakName Oak name, or {@code null} * @return JCR name, or {@code null} */ @CheckForNull protected String getJcrNameAllowNull(@CheckForNull String oakName) { if (oakName != null) { return mapper.getJcrName(oakName); } else { return null; } }
/** * Converts the given Oak names to corresponding JCR names. If the given * array is {@code null} (signifying an undefined set of names), then the * return value is also {@code null}. * * @param oakNames Oak names, or {@code null} * @return JCR names, or {@code null} */ @Nullable protected String[] getJcrNamesAllowNull(@Nullable String[] oakNames) { String[] jcrNames = null; if (oakNames != null) { jcrNames = new String[oakNames.length]; for (int i = 0; i < oakNames.length; i++) { jcrNames[i] = mapper.getJcrName(oakNames[i]); } } return jcrNames; }
/** * Converts the given Oak names to corresponding JCR names. If the given * array is {@code null} (signifying an undefined set of names), then the * return value is also {@code null}. * * @param oakNames Oak names, or {@code null} * @return JCR names, or {@code null} */ @Nullable protected String[] getJcrNamesAllowNull(@Nullable String[] oakNames) { String[] jcrNames = null; if (oakNames != null) { jcrNames = new String[oakNames.length]; for (int i = 0; i < oakNames.length; i++) { jcrNames[i] = mapper.getJcrName(oakNames[i]); } } return jcrNames; }
/** * Converts the given Oak names to corresponding JCR names. If the given * array is {@code null} (signifying an undefined set of names), then the * return value is also {@code null}. * * @param oakNames Oak names, or {@code null} * @return JCR names, or {@code null} */ @CheckForNull protected String[] getJcrNamesAllowNull(@CheckForNull String[] oakNames) { String[] jcrNames = null; if (oakNames != null) { jcrNames = new String[oakNames.length]; for (int i = 0; i < oakNames.length; i++) { jcrNames[i] = mapper.getJcrName(oakNames[i]); } } return jcrNames; }
@NotNull public String getName() { return mapper.getJcrName(tree.getName()); }
@Nullable public String getName(String name, @Nullable String defaultValue) { PropertyState property = tree.getProperty(name); if (property != null && !property.isArray()) { return mapper.getJcrName(property.getValue(STRING)); } else { return defaultValue; } }
@Test public void testSimpleNames() throws RepositoryException { List<String> simpleNames = new ArrayList<String>(); simpleNames.add("foo"); simpleNames.add(" foo "); simpleNames.add("foo.bar"); simpleNames.add("."); simpleNames.add(".."); simpleNames.add("/"); simpleNames.add(" "); for (String name : simpleNames) { assertEquals(name, mapper.getOakNameOrNull(name)); assertEquals(name, mapper.getOakName(name)); assertEquals(name, mapper.getJcrName(name)); } }
@Test public void testPrefixedNames() throws RepositoryException { List<String> prefixed = new ArrayList<String>(); prefixed.add("nt:base"); prefixed.add("foo: bar"); prefixed.add("quu:bar "); // unknown prefixes are only captured by the NameValidator prefixed.add("unknown:bar"); for (String name : prefixed) { assertEquals(name, mapper.getOakNameOrNull(name)); assertEquals(name, mapper.getOakName(name)); assertEquals(name, mapper.getJcrName(name)); } } }
@Test public void testEmptyName() throws RepositoryException { assertEquals("", mapper.getJcrName("")); assertEquals("", mapper.getOakNameOrNull("")); assertEquals("", mapper.getOakName("")); }