]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.api.cms/src/org/argeo/api/cms/CmsContext.java
Follow start levels more closely
[lgpl/argeo-commons.git] / org.argeo.api.cms / src / org / argeo / api / cms / CmsContext.java
1 package org.argeo.api.cms;
2
3 import java.util.List;
4 import java.util.Locale;
5 import java.util.UUID;
6
7 import javax.security.auth.Subject;
8
9 /**
10 * A logical view on this CMS instance, independently of a particular launch or
11 * deployment.
12 */
13 public interface CmsContext {
14 /**
15 * To be used as an identifier of a workgroup, typically as a value for the
16 * 'businessCategory' attribute in LDAP.
17 */
18 public final static String WORKGROUP = "workgroup";
19
20 Locale getDefaultLocale();
21
22 List<Locale> getLocales();
23
24 Long getAvailableSince();
25
26 /** Mark this group as a workgroup */
27 void createWorkgroup(String groupDn);
28
29 /** Get the CMS session of this subject. */
30 CmsSession getCmsSession(Subject subject);
31
32 CmsEventBus getCmsEventBus();
33
34 /** A new time based {@link UUID} (v1) using the current time */
35 UUID timeUUID();
36
37 }