Top-level class for initialization and cleanup.
It also implements static methods for capabilities that don't logically belong in a class.
Esempio n. 1
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <exception cref="System.InvalidOperationException">
 ///     This is thrown
 ///     if <see cref="Curl" /> hasn't bee properly initialized.
 /// </exception>
 public CurlHttpMultiPartForm()
 {
     Curl.EnsureCurl();
     _pItems    = new IntPtr[2];
     _pItems[0] = IntPtr.Zero;
     _pItems[1] = IntPtr.Zero;
 }
Esempio n. 2
0
        private Object _userData;                              // user data for delegates

        /// <summary>
        ///     Constructor
        /// </summary>
        /// <exception cref="System.InvalidOperationException">
        ///     This is thrown
        ///     if <see cref="Curl" /> hasn't bee properly initialized.
        /// </exception>
        /// <exception cref="System.NullReferenceException">
        ///     This is thrown if
        ///     the native <c>share</c> handle wasn't created successfully.
        /// </exception>
        public CurlShare()
        {
            Curl.EnsureCurl();
            _pShare = NativeMethods.curl_share_init();
            EnsureHandle();
            LockFunction   = null;
            UnlockFunction = null;
            UserData       = null;
            installDelegates();
        }
Esempio n. 3
0
        /// <summary>
        ///     Constructor
        /// </summary>
        /// <exception cref="System.InvalidOperationException">
        ///     This is thrown
        ///     if <see cref="Curl" /> hasn't bee properly initialized.
        /// </exception>
        /// <exception cref="System.NullReferenceException">
        ///     This is thrown if the native <c>CurlMulti</c> handle wasn't
        ///     created successfully.
        /// </exception>
        public CurlMulti()
        {
            Curl.EnsureCurl();
            _pMulti = NativeMethods.curl_multi_init();
            ensureHandle();
            _maxFd = 0;
#if USE_LIBCURLSHIM
            _fdSets = IntPtr.Zero;
            _fdSets = NativeMethods.curl_shim_alloc_fd_sets();
#else
            _fd_read   = NativeMethods.fd_set.Create();
            _fd_read   = NativeMethods.fd_set.Create();
            _fd_write  = NativeMethods.fd_set.Create();
            _fd_except = NativeMethods.fd_set.Create();
#endif
            _multiInfo     = null;
            _bGotMultiInfo = false;
            _htEasy        = new Hashtable();
        }
Esempio n. 4
0
 /// <summary>
 ///     Constructor
 /// </summary>
 /// <exception cref="System.InvalidOperationException">
 ///     This is thrown
 ///     if <see cref="Curl" /> hasn't bee properly initialized.
 /// </exception>
 public CurlSlist()
 {
     Curl.EnsureCurl();
     Handle = IntPtr.Zero;
 }