- ServiceReference<UserAdmin> sr = instance.bc.getServiceReference(UserAdmin.class);
- NodeUserAdmin userAdmin = (NodeUserAdmin) instance.bc.getService(sr);
- return userAdmin.getAcceptorCredentials();
+ return getNodeUserAdmin().getAcceptorCredentials();
+ }
+
+ public static boolean isSingleUser() {
+ return getNodeUserAdmin().isSingleUser();
+ }
+
+ public static UserAdmin getUserAdmin() {
+ return (UserAdmin) getNodeUserAdmin();
+ }
+
+ public static String getHttpProxySslHeader() {
+ return KernelUtils.getFrameworkProp(NodeConstants.HTTP_PROXY_SSL_DN);
+ }
+
+ public static IdentClient getIdentClient(String remoteAddr) {
+ if (!IdentClient.isDefaultAuthdPassphraseFileAvailable())
+ return null;
+ // TODO make passphrase more configurable
+ return new IdentClient(remoteAddr);
+ }
+
+ private static NodeUserAdmin getNodeUserAdmin() {
+ NodeUserAdmin res;
+ try {
+ res = instance.userAdminSt.waitForService(60000);
+ } catch (InterruptedException e) {
+ throw new CmsException("Cannot retrieve Node user admin", e);
+ }
+ if (res == null)
+ throw new CmsException("No Node user admin found");
+
+ return res;
+ // ServiceReference<UserAdmin> sr =
+ // instance.bc.getServiceReference(UserAdmin.class);
+ // NodeUserAdmin userAdmin = (NodeUserAdmin) instance.bc.getService(sr);
+ // return userAdmin;
+