]> git.argeo.org Git - lgpl/argeo-commons.git/blob - SecureApplicationActivator.java
9c0425c5ba4f93c7ef573cbe7da7b42cdcd9f889
[lgpl/argeo-commons.git] / SecureApplicationActivator.java
1 /*
2 * Copyright (C) 2007-2012 Argeo GmbH
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16 package org.argeo.security.ui.rcp;
17
18 import java.net.URL;
19
20 import org.eclipse.equinox.security.auth.ILoginContext;
21 import org.eclipse.equinox.security.auth.LoginContextFactory;
22 import org.osgi.framework.BundleActivator;
23 import org.osgi.framework.BundleContext;
24
25 /** Activator able to create {@link ILoginContext} */
26 public class SecureApplicationActivator implements BundleActivator {
27
28 public final static String CONTEXT_REMOTE = "REMOTE";
29 public final static String CONTEXT_NIX = "NIX";
30 public final static String CONTEXT_WINDOWS = "WINDOWS";
31 private static final String JAAS_CONFIG_FILE = "/META-INF/jaas_default.txt";
32
33 private static BundleContext bundleContext;
34
35 public void start(BundleContext bundleContext) throws Exception {
36 SecureApplicationActivator.bundleContext = bundleContext;
37 }
38
39 public void stop(BundleContext context) throws Exception {
40 }
41
42 static ILoginContext createLoginContext(String context) {
43 URL configUrl = bundleContext.getBundle().getEntry(JAAS_CONFIG_FILE);
44 return LoginContextFactory.createContext(context, configUrl);
45 }
46 }