Bug 123540 Smoke[Regression]: NPE is thrown out in property editor.
Description: NPE is thrown out in property editor. Steps to reproduce: 1. Install BIRT RCP build. 2. Kick off Eclipse. 3. NPE is thrown out. java.lang.NullPointerException at org.eclipse.birt.report.designer.core.model.SessionHandleAdapter.getMediator(SessionHandleAdapter.java:263) at org.eclipse.birt.report.designer.core.model.SessionHandleAdapter.getMediator(SessionHandleAdapter.java:278) at org.eclipse.birt.report.designer.ui.views.attributes.AttributeView.addActions(AttributeView.java:334) at org.eclipse.birt.report.designer.ui.views.attributes.AttributeView.createPartControl(AttributeView.java:276) at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:305) at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:180) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552) at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:283) at org.eclipse.ui.internal.ViewPane.setVisible(ViewPane.java:512) at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:126) at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:268) at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:65) at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:391) at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1102) at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1051) at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1256) at org.eclipse.ui.internal.PartStack.createControl(PartStack.java:576) at org.eclipse.ui.internal.PartStack.createControl(PartStack.java:528) at org.eclipse.ui.internal.PartSashContainer.createControl(PartSashContainer.java:485) at org.eclipse.ui.internal.PerspectiveHelper.activate(PerspectiveHelper.java:230) at org.eclipse.ui.internal.Perspective.onActivate(Perspective.java:813) at org.eclipse.ui.internal.WorkbenchPage.onActivate(WorkbenchPage.java:2165) at org.eclipse.ui.internal.WorkbenchWindow$5.run(WorkbenchWindow.java:2356) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69) at org.eclipse.ui.internal.WorkbenchWindow.setActivePage(WorkbenchWindow.java:2338) at org.eclipse.ui.internal.WorkbenchWindow.busyOpenPage(WorkbenchWindow.java:681) at org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:669) at org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:1282) at org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1223) at org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:190) at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:706) at org.eclipse.ui.internal.Workbench.init(Workbench.java:1034) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1636) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143) at org.eclipse.birt.report.designer.ui.rcp.DesignerApplication.run(DesignerApplication.java:36) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334) at org.eclipse.core.launcher.Main.basicRun(Main.java:278) at org.eclipse.core.launcher.Main.run(Main.java:973) at org.eclipse.core.launcher.Main.main(Main.java:948)
UI/org.eclipse.birt.report.designer.core/src/org/eclipse/birt/report/designer/core/model/SessionHandleAdapter.java
private Map mediatorMap = new WeakHashMap( );
	/**
	 * constructor Mark it to private to avoid new opeartion.
	 */
	private SessionHandleAdapter( )
	{
	}
	
	public int getFileType()
	{
		return type;
	}
	private static SessionHandleAdapter sessionAdapter;
	private SessionHandle sessionHandle;
	private ReportDesignHandleAdapter designHandleAdapter;
	/**
	 * Gets singleton instance method
	 * 
	 * @return return SessionHandleAdapter instance
	 */
	public static SessionHandleAdapter getInstance( )
	{
		if ( sessionAdapter == null )
		{
			sessionAdapter = new SessionHandleAdapter( );
		}
		return sessionAdapter;
	}