package org.argeo.cms.e4.rcp;
import java.security.PrivilegedExceptionAction;
+import java.util.UUID;
import javax.security.auth.Subject;
import javax.security.auth.login.LoginContext;
import javax.security.auth.login.LoginException;
+import org.argeo.api.NodeConstants;
+import org.argeo.api.cms.CmsImageManager;
+import org.argeo.api.cms.CmsView;
+import org.argeo.api.cms.UxContext;
import org.argeo.cms.CmsException;
import org.argeo.cms.auth.CurrentUser;
-import org.argeo.cms.ui.CmsImageManager;
-import org.argeo.cms.ui.CmsView;
-import org.argeo.cms.ui.UxContext;
-import org.argeo.cms.util.SimpleUxContext;
-import org.argeo.cms.widgets.auth.CmsLoginShell;
-import org.argeo.node.NodeConstants;
+import org.argeo.cms.swt.CmsSwtUtils;
+import org.argeo.cms.swt.SimpleSwtUxContext;
+import org.argeo.cms.swt.auth.CmsLoginShell;
import org.eclipse.core.runtime.IConfigurationElement;
import org.eclipse.core.runtime.IExtension;
import org.eclipse.core.runtime.Platform;
private LoginContext loginContext;
private IApplication e4Application;
private UxContext uxContext;
+ private String uid;
@Override
public Object start(IApplicationContext context) throws Exception {
+ uid = UUID.randomUUID().toString();
Subject subject = new Subject();
Display display = createDisplay();
CmsLoginShell loginShell = new CmsLoginShell(this);
// return null;
// }
- uxContext = new SimpleUxContext();
-
+ uxContext = new SimpleSwtUxContext();
+ //UiContext.setData(CmsView.KEY, this);
+ CmsSwtUtils.registerCmsView(loginShell.getShell(), this);
e4Application = getApplication(null);
Object res = Subject.doAs(subject, new PrivilegedExceptionAction<Object>() {
return CurrentUser.isAnonymous(getSubject());
}
+ @Override
+ public String getUid() {
+ return uid;
+ }
+
+
}