Checking in vendor folder for ease of using go get.
This commit is contained in:
parent
7a1251853b
commit
cdb4b5a1d0
3554 changed files with 1270116 additions and 0 deletions
2
vendor/git.apache.org/thrift.git/tutorial/dart/server/.analysis_options
generated
vendored
Normal file
2
vendor/git.apache.org/thrift.git/tutorial/dart/server/.analysis_options
generated
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
analyzer:
|
||||
strong-mode: true
|
163
vendor/git.apache.org/thrift.git/tutorial/dart/server/bin/main.dart
generated
vendored
Normal file
163
vendor/git.apache.org/thrift.git/tutorial/dart/server/bin/main.dart
generated
vendored
Normal file
|
@ -0,0 +1,163 @@
|
|||
/// Licensed to the Apache Software Foundation (ASF) under one
|
||||
/// or more contributor license agreements. See the NOTICE file
|
||||
/// distributed with this work for additional information
|
||||
/// regarding copyright ownership. The ASF licenses this file
|
||||
/// to you under the Apache License, Version 2.0 (the
|
||||
/// "License"); you may not use this file except in compliance
|
||||
/// with the License. You may obtain a copy of the License at
|
||||
///
|
||||
/// http://www.apache.org/licenses/LICENSE-2.0
|
||||
///
|
||||
/// Unless required by applicable law or agreed to in writing,
|
||||
/// software distributed under the License is distributed on an
|
||||
/// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
/// KIND, either express or implied. See the License for the
|
||||
/// specific language governing permissions and limitations
|
||||
/// under the License.
|
||||
|
||||
import 'dart:async';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:args/args.dart';
|
||||
import 'package:logging/logging.dart';
|
||||
import 'package:thrift/thrift.dart';
|
||||
import 'package:thrift/thrift_console.dart';
|
||||
import 'package:tutorial/tutorial.dart';
|
||||
import 'package:shared/shared.dart';
|
||||
|
||||
TProtocol _protocol;
|
||||
TProcessor _processor;
|
||||
WebSocket _webSocket;
|
||||
|
||||
main(List<String> args) {
|
||||
Logger.root.level = Level.ALL;
|
||||
Logger.root.onRecord.listen((LogRecord rec) {
|
||||
print('${rec.level.name}: ${rec.time}: ${rec.message}');
|
||||
});
|
||||
|
||||
var parser = new ArgParser();
|
||||
parser.addOption('port', defaultsTo: '9090', help: 'The port to listen on');
|
||||
parser.addOption('type',
|
||||
defaultsTo: 'ws',
|
||||
allowed: ['ws', 'tcp'],
|
||||
help: 'The type of socket',
|
||||
allowedHelp: {'ws': 'WebSocket', 'tcp': 'TCP Socket'});
|
||||
|
||||
ArgResults results;
|
||||
try {
|
||||
results = parser.parse(args);
|
||||
} catch (e) {
|
||||
results = null;
|
||||
}
|
||||
|
||||
if (results == null) {
|
||||
print(parser.usage);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
int port = int.parse(results['port']);
|
||||
String socketType = results['type'];
|
||||
|
||||
if (socketType == 'tcp') {
|
||||
_runTcpServer(port);
|
||||
} else if (socketType == 'ws') {
|
||||
_runWebSocketServer(port);
|
||||
}
|
||||
}
|
||||
|
||||
Future _runWebSocketServer(int port) async {
|
||||
var httpServer = await HttpServer.bind('127.0.0.1', port);
|
||||
print('listening for WebSocket connections on $port');
|
||||
|
||||
httpServer.listen((HttpRequest request) async {
|
||||
if (request.uri.path == '/ws') {
|
||||
_webSocket = await WebSocketTransformer.upgrade(request);
|
||||
await _initProcessor(new TWebSocket(_webSocket));
|
||||
} else {
|
||||
print('Invalid path: ${request.uri.path}');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Future _runTcpServer(int port) async {
|
||||
var serverSocket = await ServerSocket.bind('127.0.0.1', port);
|
||||
print('listening for TCP connections on $port');
|
||||
|
||||
Socket socket = await serverSocket.first;
|
||||
await _initProcessor(new TTcpSocket(socket));
|
||||
}
|
||||
|
||||
Future _initProcessor(TSocket socket) async {
|
||||
TServerSocketTransport transport = new TServerSocketTransport(socket);
|
||||
transport.onIncomingMessage.listen(_processMessage);
|
||||
_processor = new CalculatorProcessor(new CalculatorServer());
|
||||
_protocol = new TBinaryProtocol(transport);
|
||||
await _protocol.transport.open();
|
||||
|
||||
print('connected');
|
||||
}
|
||||
|
||||
Future _processMessage(_) async {
|
||||
_processor.process(_protocol, _protocol);
|
||||
}
|
||||
|
||||
class CalculatorServer implements Calculator {
|
||||
final Map<int, SharedStruct> _log = {};
|
||||
|
||||
Future ping() async {
|
||||
print('ping()');
|
||||
}
|
||||
|
||||
Future<int> add(int num1, int num2) async {
|
||||
print('add($num1, $num2)');
|
||||
|
||||
return num1 + num2;
|
||||
}
|
||||
|
||||
Future<int> calculate(int logid, Work work) async {
|
||||
print('calulate($logid, ${work.toString()})');
|
||||
|
||||
int val;
|
||||
|
||||
switch (work.op) {
|
||||
case Operation.ADD:
|
||||
val = work.num1 + work.num2;
|
||||
break;
|
||||
|
||||
case Operation.SUBTRACT:
|
||||
val = work.num1 - work.num2;
|
||||
break;
|
||||
|
||||
case Operation.MULTIPLY:
|
||||
val = work.num1 * work.num2;
|
||||
break;
|
||||
|
||||
case Operation.DIVIDE:
|
||||
if (work.num2 == 0) {
|
||||
var x = new InvalidOperation();
|
||||
x.whatOp = work.op;
|
||||
x.why = 'Cannot divide by 0';
|
||||
throw x;
|
||||
}
|
||||
val = (work.num1 / work.num2).floor();
|
||||
break;
|
||||
}
|
||||
|
||||
var log = new SharedStruct();
|
||||
log.key = logid;
|
||||
log.value = '$val "${work.comment}"';
|
||||
this._log[logid] = log;
|
||||
|
||||
return val;
|
||||
}
|
||||
|
||||
Future zip() async {
|
||||
print('zip()');
|
||||
}
|
||||
|
||||
Future<SharedStruct> getStruct(int key) async {
|
||||
print('getStruct($key)');
|
||||
|
||||
return _log[key];
|
||||
}
|
||||
}
|
34
vendor/git.apache.org/thrift.git/tutorial/dart/server/pubspec.yaml
generated
vendored
Normal file
34
vendor/git.apache.org/thrift.git/tutorial/dart/server/pubspec.yaml
generated
vendored
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# 'License'); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# 'AS IS' BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
name: tutorial_server
|
||||
version: 0.10.0
|
||||
description: A Dart server to support the Apache Thrift tutorial
|
||||
author: Apache Thrift Developers <dev@thrift.apache.org>
|
||||
homepage: http://thrift.apache.org
|
||||
|
||||
environment:
|
||||
sdk: ">=1.13.0 <2.0.0"
|
||||
|
||||
dependencies:
|
||||
args: ^0.13.0
|
||||
shared:
|
||||
path: ../gen-dart/shared
|
||||
thrift:
|
||||
path: ../../../lib/dart
|
||||
tutorial:
|
||||
path: ../gen-dart/tutorial
|
Loading…
Add table
Add a link
Reference in a new issue