public Response handle(Request r) {		
		// first of all, file requests or plugins should always be okay
		// plugins allowed basically so I can reset mediatomb if it died
		if (r.getPage().equals(STServer.FILES) ||
				r.getPage().equals(STServer.PLUGINS))
			return super.handle(r);
		 
		Response resp = new Response();
		
		// set the content type for PS3 to be happy
		// it's not a file, so it should be html!
		resp.setContentType("text/html"); 
			 
		// make sure we have a profile!
		if (!Profile.getInstance().isSelected() && 
				specificHandler(STServer.PROFILE_SELECT, r, "display Profile Select page", resp)) {
			return resp;
		}
		
		// check for a static message (eg: reloading)
		synchronized(isStatic) {
			if (isStatic && specificHandler(STServer.STATIC_MESSAGE, r, 
					"display Static Message page", resp)) {
				return resp;
			} 
		}
		// make sure we know the user		
		if (!Profile.getInstance().fillUser(r) &&
				specificHandler(STServer.USER_SELECT, r, "request a user", resp)) {			
			return resp;
		}
		
		// default actions
		return super.handle(r);
	}