code: private ContextModel getOrCreateContext(final HttpContext httpContext) {
  		// org.osgi.service.http.HttpContext -> org.ops4j.pax.web.service.WebContainerContext
  		final WebContainerContext context;
  		if (httpContext == null) {
  			context = createDefaultHttpContext();
  		} else if (!(httpContext instanceof WebContainerContext)) {
  			context = new WebContainerContextWrapper(serviceBundle, httpContext);
  		} else {
  			context = (WebContainerContext) httpContext;
  		}
  
  		// sanity check - non shared context should be associated to single bundle
  		serverModel.associateHttpContext(context, serviceBundle, httpContext instanceof SharedWebContainerContext);
  
  		ContextModel contextModel = serviceModel.getContextModel(context);
  		if (contextModel == null) {
  			contextModel = new ContextModel(context, serviceBundle,
  					bundleClassLoader);
  			contextModel.setVirtualHosts(serverController.getConfiguration()
  					.getVirtualHosts());
  		}
  		return contextModel;
  	}
docs: Single, bundle-scoped instance of {@link HttpService} (this class) may manage different {@link ContextModel servlet contexts}
  identified by {@link HttpContext}.
  @param httpContext
  @return