示例#1
0
		public void set_object(object o) {
			_o = o;
			_ow = new ObjectWrapper(_o);
			if(!string.IsNullOrEmpty(combobox1.ActiveText))
				OnCombobox1Changed(combobox1,new EventArgs());
		}
示例#2
0
        public bool Process(Object context, Object tag)
        {
            proxy_transaction pt = (proxy_transaction)context;
            Boolean retval = false;
            lock (_switchPairs)
            {
				foreach (filter_target ft in _switchPairs)
                {
                    if (ConditionChecker.Check(pt, ft.ConditionString))
                    {
                        pt.Response = new http_response();

                        pt.Response.Header.Statuscode = "302";
                        pt.Response.Header.Statusmessage = "Found";

                        pt.Response.Header.SetValue("Content-Length", "0");
                        pt.Response.Header.SetValue("Host", pt.Request.Uri.Host);
                        if(ObjectWrapper.isMethod(ft.target))
                        {
                            ObjectWrapper ow = new ObjectWrapper(pt);
                            pt.Response.Header.SetValue("Location", (String)ow.ExecutePath(ft.target));
                        }
                        else
                        {
                            pt.Response.Header.SetValue("Location", ft.target);
                        }

                        pt.Response.Respond(pt.ClientConnection.Client,pt.ClientStream);
                        retval = true;
                        break;
                    }
                }
            }
            return retval;
        }