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