コード例 #1
0
        public static int Status(SvnPath path,
                                 SvnOptRevision revision,
                                 SvnWcStatus.Func statusFunc, IntPtr statusBaton,
                                 bool descend, bool getAll, bool update, bool noIgnore,
                                 SvnClientContext ctx, AprPool pool)
        {
            int         rev;
            SvnDelegate statusDelegate = new SvnDelegate(statusFunc);

            Debug.Write(String.Format("svn_client_status({0},{1},{2},{3},{4:X},{5},{6},{7},{8},{9})...", path, revision, statusFunc.Method.Name, statusBaton.ToInt32(), descend, getAll, update, noIgnore, ctx, pool));
            SvnError err = Svn.svn_client_status(out rev, path, revision,
                                                 (Svn.svn_wc_status_func_t)statusDelegate.Wrapper,
                                                 statusBaton,
                                                 (descend ? 1 : 0), (getAll ? 1 : 0),
                                                 (update ? 1 : 0), (noIgnore ? 1 : 0),
                                                 ctx, pool);

            if (!err.IsNoError)
            {
                throw new SvnException(err);
            }
            Debug.WriteLine(String.Format("Done({0})", rev));
            if (update)
            {
                return(rev);
            }
            else
            {
                return(-1);
            }
        }
コード例 #2
0
 public int Status(string path, SvnRevision revision,
                   SvnWcStatus.Func statusFunc, IntPtr statusBaton,
                   bool descend, bool getAll, bool update, bool noIgnore)
 {
     return(Status(new SvnPath(path, mPool), revision.ToSvnOpt(mPool), statusFunc, statusBaton,
                   descend, getAll, update, noIgnore, mContext, mPool));
 }
コード例 #3
0
 private void SvnWcStatusFuncWrapper(IntPtr baton, IntPtr path, IntPtr status)
 {
     SvnWcStatus.Func func = mFunc as SvnWcStatus.Func;
     try {
         Debug.WriteLine(String.Format("[Callback:{0}]SvnWcStatusFunc({1:X},{2},{3})", func.Method.Name, baton.ToInt32(), new SvnPath(path), new SvnWcStatus(status)));
         func(baton, new SvnPath(path), (SvnWcStatus)status);
     }
     catch (Exception) {
         return;
     }
 }
コード例 #4
0
 // svn_wc_status_func_t Wrapper
 public SvnDelegate(SvnWcStatus.Func func)
 {
     mFunc        = func;
     mWrapperFunc = new Svn.svn_wc_status_func_t(SvnWcStatusFuncWrapper);
 }