예제 #1
0
 public override void CopyFrom(object obj)
 {
     if (obj is RequestStatus)
     {
         RequestStatus rs = (RequestStatus)obj;
         StatusCode = new StatusCode();
         StatusCode.CopyFrom(rs.StatusCode);
         StatusDesc = new Text(rs.StatusDesc.Value);
         if (rs.ExtData != null)
         {
             ExtData = new Text(rs.ExtData.Value);
         }
     }
     base.CopyFrom(obj);
 }
예제 #2
0
        public override bool TryParse(string value, ref object obj)
        {
            RequestStatus rs    = (RequestStatus)obj;
            Match         match = Regex.Match(value, @"(\.*[^\\]);(\.*[^\\])(;(\.*))?");

            if (match.Success)
            {
                if (!match.Groups[1].Success ||
                    !match.Groups[2].Success)
                {
                    return(false);
                }

                StatusCode = new StatusCode(match.Groups[1].Value);
                StatusDesc = new Text(match.Groups[1].Value);
                if (match.Groups[3].Success)
                {
                    ExtData = new Text(match.Groups[4].Value);
                }
            }
            return(false);
        }