Esempio n. 1
0
            public object bufsize = DefaultBufferSize; // Only present for compatibility with CPython public API

            public _fileobject(CodeContext/*!*/ context, object socket, [DefaultParameterValue("rb")]string mode, [DefaultParameterValue(-1)]int bufsize, [DefaultParameterValue(false)]bool close)
                : base(PythonContext.GetContext(context)) {
                _close = close;

                Stream stream;
                socket s = (socket as socket);
                if (s != null && s._socket.Connected) {
                    _socket = s;
                    stream = new NetworkStream(s._socket);
                } else {
                    stream = new PythonUserSocketStream(context, socket, GetBufferSize(context, bufsize), close);
                }
                base.__init__(stream, System.Text.Encoding.Default, mode);
            }
Esempio n. 2
0
            public object bufsize = DefaultBufferSize; // Only present for compatibility with CPython public API

            public _fileobject(CodeContext/*!*/ context, object socket, [DefaultParameterValue("rb")]string mode, [DefaultParameterValue(-1)]int bufsize, [DefaultParameterValue(false)]bool close)
                : base(PythonContext.GetContext(context)) {

                Stream stream;
                _close = close;
                // subtypes of socket need to go through the user defined methods
                if (socket != null && socket.GetType() == typeof(socket) && ((socket)socket)._socket.Connected) {
                    socket s = (socket as socket);
                    _socket = s;
                    stream = new NetworkStream(s._socket, false);
                } else {
                    stream = new PythonUserSocketStream(socket, GetBufferSize(context, bufsize), close);
                }
                _isOpen = true;
                base.__init__(stream, System.Text.Encoding.Default, mode);
            }