core/com.nokia.carbide.discovery.ui/src/com/nokia/carbide/discovery/ui/Activator.java
author dadubrow
Mon, 19 Jul 2010 14:40:41 -0500
changeset 1637 06fc2fdd1ac4
parent 1634 c8405758cfd4
child 1661 cd8159f371c7
permissions -rw-r--r--
add mozilla support
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1377
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     1
/*
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     2
* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     3
* All rights reserved.
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     4
* This component and the accompanying materials are made available
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     5
* under the terms of the License "Eclipse Public License v1.0"
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     6
* which accompanies this distribution, and is available
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     8
*
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
     9
* Initial Contributors:
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    10
* Nokia Corporation - initial contribution.
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    11
*
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    12
* Contributors:
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    13
*
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    14
* Description: 
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    15
*
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    16
*/
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    17
package com.nokia.carbide.discovery.ui;
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    18
1634
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    19
import java.io.File;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    20
import java.io.FileInputStream;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    21
import java.io.IOException;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    22
import java.io.InputStream;
1637
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    23
import java.net.URI;
1634
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    24
import java.net.URL;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    25
import java.text.MessageFormat;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    26
import java.util.Properties;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    27
1637
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    28
import org.eclipse.core.net.proxy.IProxyData;
1634
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    29
import org.eclipse.core.runtime.IPath;
1363
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
    30
import org.eclipse.core.runtime.IStatus;
1634
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    31
import org.eclipse.core.runtime.Path;
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    32
import org.eclipse.core.runtime.Platform;
1363
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
    33
import org.eclipse.core.runtime.Status;
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    34
import org.eclipse.jface.resource.ImageDescriptor;
1634
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
    35
import org.eclipse.osgi.service.datalocation.Location;
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    36
import org.eclipse.ui.plugin.AbstractUIPlugin;
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    37
import org.osgi.framework.BundleContext;
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    38
1637
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    39
import com.nokia.cpp.internal.api.utils.core.ProxyUtils;
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    40
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    41
/**
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    42
 * The activator class controls the plug-in life cycle
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    43
 */
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    44
public class Activator extends AbstractUIPlugin {
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    45
	// The plug-in ID
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    46
	public static final String PLUGIN_ID = "com.nokia.carbide.discovery.ui"; //$NON-NLS-1$
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    47
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    48
	// The shared instance
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    49
	private static Activator plugin;
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    50
1637
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    51
	private static final String PROPERTY_PROXYPORT = "network.proxy_port"; //$NON-NLS-1$
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    52
	private static final String PROPERTY_PROXYHOST = "network.proxy_host"; //$NON-NLS-1$
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    53
	
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    54
	/**
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    55
	 * The constructor
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    56
	 */
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    57
	public Activator() {
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    58
	}
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    59
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    60
	/*
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    61
	 * (non-Javadoc)
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    62
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    63
	 */
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    64
	public void start(BundleContext context) throws Exception {
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    65
		super.start(context);
1637
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    66
		IProxyData proxyData = ProxyUtils.getProxyData(new URI("http://www.yahoo.com"));
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    67
		System.setProperty(PROPERTY_PROXYHOST, proxyData.getHost());
06fc2fdd1ac4 add mozilla support
dadubrow
parents: 1634
diff changeset
    68
		System.setProperty(PROPERTY_PROXYPORT, String.valueOf(proxyData.getPort()));
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    69
	}
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    70
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    71
	/*
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    72
	 * (non-Javadoc)
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    73
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    74
	 */
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    75
	public void stop(BundleContext context) throws Exception {
1377
40401ea8b1fd move p2 policy code to discovery plugin for now + add system property for disabling unsigned check
dadubrow
parents: 1363
diff changeset
    76
		super.stop(context);
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    77
		plugin = null;
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    78
	}
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    79
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    80
	/**
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    81
	 * Returns the shared instance
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    82
	 *
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    83
	 * @return the shared instance
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    84
	 */
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    85
	public static Activator getDefault() {
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    86
		return plugin;
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    87
	}
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    88
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    89
	/**
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    90
	 * Returns an image descriptor for the image file at the given
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    91
	 * plug-in relative path
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    92
	 *
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    93
	 * @param path the path
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    94
	 * @return the image descriptor
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    95
	 */
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    96
	public static ImageDescriptor getImageDescriptor(String path) {
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    97
		return imageDescriptorFromPlugin(PLUGIN_ID, path);
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
    98
	}
1363
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
    99
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   100
	/**
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   101
	 * Log to error log
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   102
	 * @param message
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   103
	 * @param t
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   104
	 */
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   105
	public static void logError(String message, Throwable t) {
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   106
		getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, message, t));
dfbd4576cd61 move url to server.properties
dadubrow
parents: 1360
diff changeset
   107
	}
1634
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   108
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   109
	/**
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   110
	 * Get a value from the server.properties file
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   111
	 * @param key
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   112
	 * @return
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   113
	 */
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   114
	public static String getFromServerProperties(String key) {
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   115
		Location installLocation = Platform.getInstallLocation();
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   116
		URL url = installLocation.getURL();
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   117
		IPath path = new Path(url.getPath());
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   118
		path = path.append("configuration/server.properties"); //$NON-NLS-1$
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   119
		File file = path.toFile();
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   120
		Properties properties = new Properties();
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   121
		try {
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   122
			InputStream is = new FileInputStream(file);
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   123
			properties.load(is);
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   124
			is.close();
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   125
		} catch (IOException e) {
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   126
			String message = 
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   127
				MessageFormat.format("Could not find URL in configuration/server.properties file for key={0}", key);
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   128
			Activator.logError(message, e);
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   129
		}
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   130
		return (String) properties.get(key);
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   131
	}
c8405758cfd4 add portal support for browser page
dadubrow
parents: 1378
diff changeset
   132
1360
b609311b7b1c initial commit
dadubrow
parents:
diff changeset
   133
}