]>
git.argeo.org Git - gpl/argeo-suite.git/blob - org.argeo.app.api/src/org/argeo/app/api/JcrName.java
1 package org
.argeo
.app
.api
;
3 import java
.util
.function
.Supplier
;
5 /** Can be applied to {@link Enum}s in order to generate prefixed names. */
8 public interface JcrName
extends Supplier
<String
> {
11 default String
getPrefix() {
15 default String
getNamespace() {
20 default String
get() {
21 String prefix
= getPrefix();
22 return prefix
!= null ? prefix
+ ":" + name() : name();
25 default String
withNamespace() {
26 String namespace
= getNamespace();
27 if (namespace
== null)
28 throw new UnsupportedOperationException("No namespace is specified for " + getClass());
29 return "{" + namespace
+ "}" + name();