1/// Licensed to the Apache Software Foundation (ASF) under one
2/// or more contributor license agreements. See the NOTICE file
3/// distributed with this work for additional information
4/// regarding copyright ownership. The ASF licenses this file
5/// to you under the Apache License, Version 2.0 (the
6/// "License"); you may not use this file except in compliance
7/// with the License. You may obtain a copy of the License at
8///
9/// http://www.apache.org/licenses/LICENSE-2.0
10///
11/// Unless required by applicable law or agreed to in writing,
12/// software distributed under the License is distributed on an
13/// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14/// KIND, either express or implied. See the License for the
15/// specific language governing permissions and limitations
16/// under the License.
17
18part of thrift;
19
20enum TSocketState { CLOSED, OPEN }
21
22abstract class TSocket {
23  Stream<TSocketState> get onState;
24
25  Stream<Object> get onError;
26
27  Stream<Uint8List> get onMessage;
28
29  bool get isOpen;
30
31  bool get isClosed;
32
33  Future open();
34
35  Future close();
36
37  void send(Uint8List data);
38}
39