context.framework.adaptor.handleRuntimeError(t);
	protected Object getService() {		if ((useCount == 0) && (factory != null)) {			AbstractBundle factorybundle = registration.context.bundle;			Object service;			try {				service = AccessController.doPrivileged(new PrivilegedAction() {					public Object run() {						return factory.getService(context.bundle, registration);					}				});			} catch (Throwable t) {				if (Debug.DEBUG && Debug.DEBUG_SERVICES) {					Debug.println(factory + ".getService() exception: " + t.getMessage()); //$NON-NLS-1$					Debug.printStackTrace(t);				}				BundleException be = new BundleException(Msg.formatter.getString("SERVICE_FACTORY_EXCEPTION", factory.getClass().getName(), "getService"), t); //$NON-NLS-1$ //$NON-NLS-2$				context.framework.publishFrameworkEvent(FrameworkEvent.ERROR, factorybundle, be);				return (null);			}			if (service == null) {				if (Debug.DEBUG && Debug.DEBUG_SERVICES) {					Debug.println(factory + ".getService() returned null."); //$NON-NLS-1$				}				BundleException be = new BundleException(Msg.formatter.getString("SERVICE_OBJECT_NULL_EXCEPTION", factory.getClass().getName())); //$NON-NLS-1$				context.framework.publishFrameworkEvent(FrameworkEvent.ERROR, factorybundle, be);				return (null);			}			String[] clazzes = registration.clazzes;			int size = clazzes.length;			PackageAdminImpl packageAdmin = context.framework.packageAdmin;			for (int i = 0; i < size; i++) {				Class clazz = packageAdmin.loadServiceClass(clazzes[i], factorybundle);				if (clazz == null) {					if (Debug.DEBUG && Debug.DEBUG_SERVICES) {						Debug.println(clazzes[i] + " class not found"); //$NON-NLS-1$					}					BundleException be = new BundleException(Msg.formatter.getString("SERVICE_CLASS_NOT_FOUND_EXCEPTION", clazzes[i])); //$NON-NLS-1$					context.framework.publishFrameworkEvent(FrameworkEvent.ERROR, factorybundle, be);					return (null);				}				if (!clazz.isInstance(service)) {					if (Debug.DEBUG && Debug.DEBUG_SERVICES) {						Debug.println("Service object from ServiceFactory is not an instanceof " + clazzes[i]); //$NON-NLS-1$					}					BundleException be = new BundleException(Msg.formatter.getString("SERVICE_NOT_INSTANCEOF_CLASS_EXCEPTION", factory.getClass().getName(), clazzes[i])); //$NON-NLS-1$					context.framework.publishFrameworkEvent(FrameworkEvent.ERROR, factorybundle, be);					return (null);				}			}			this.service = service;		}		useCount++;		return (this.service);	}