├── LICENSE ├── build_all.sh ├── docs ├── getty-benchmark.doc └── question.doc ├── echo ├── tcp-echo │ ├── change_log.md │ ├── client │ │ ├── app │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ ├── echo.go │ │ │ ├── handler.go │ │ │ ├── main.go │ │ │ ├── readwriter.go │ │ │ └── version.go │ │ ├── assembly │ │ │ ├── bin │ │ │ │ └── load.sh │ │ │ ├── common │ │ │ │ ├── app.properties │ │ │ │ └── build.sh │ │ │ ├── linux │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ │ ├── mac │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ │ └── windows │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ └── profiles │ │ │ ├── dev │ │ │ ├── config.yml │ │ │ └── log.xml │ │ │ ├── release │ │ │ ├── config.yml │ │ │ └── log.xml │ │ │ └── test │ │ │ ├── config.yml │ │ │ └── log.xml │ └── server │ │ ├── app │ │ ├── config.go │ │ ├── echo.go │ │ ├── handler.go │ │ ├── readwriter.go │ │ ├── server.go │ │ └── version.go │ │ ├── assembly │ │ ├── bin │ │ │ └── load.sh │ │ ├── common │ │ │ ├── app.properties │ │ │ └── build.sh │ │ ├── linux │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ ├── mac │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── windows │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── profiles │ │ ├── dev │ │ ├── config.yml │ │ └── log.xml │ │ ├── release │ │ ├── config.yml │ │ └── log.xml │ │ └── test │ │ ├── config.yml │ │ └── log.xml ├── udp-echo │ ├── change_log.md │ ├── client │ │ ├── app │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ ├── echo.go │ │ │ ├── handler.go │ │ │ ├── main.go │ │ │ ├── readwriter.go │ │ │ └── version.go │ │ ├── assembly │ │ │ ├── bin │ │ │ │ └── load.sh │ │ │ ├── common │ │ │ │ ├── app.properties │ │ │ │ └── build.sh │ │ │ ├── linux │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ │ ├── mac │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ │ └── windows │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ └── profiles │ │ │ ├── dev │ │ │ ├── config.toml │ │ │ └── log.xml │ │ │ ├── release │ │ │ ├── config.toml │ │ │ └── log.xml │ │ │ └── test │ │ │ ├── config.toml │ │ │ └── log.xml │ └── server │ │ ├── app │ │ ├── config.go │ │ ├── echo.go │ │ ├── handler.go │ │ ├── readwriter.go │ │ ├── server.go │ │ └── version.go │ │ ├── assembly │ │ ├── bin │ │ │ └── load.sh │ │ ├── common │ │ │ ├── app.properties │ │ │ └── build.sh │ │ ├── linux │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ ├── mac │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── windows │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── profiles │ │ ├── dev │ │ ├── config.toml │ │ └── log.xml │ │ ├── release │ │ ├── config.toml │ │ └── log.xml │ │ └── test │ │ ├── config.toml │ │ └── log.xml ├── ws-echo │ ├── change_log.md │ ├── client │ │ ├── app │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ ├── echo.go │ │ │ ├── handler.go │ │ │ ├── main.go │ │ │ ├── readwriter.go │ │ │ └── version.go │ │ ├── assembly │ │ │ ├── bin │ │ │ │ └── load.sh │ │ │ ├── common │ │ │ │ ├── app.properties │ │ │ │ └── build.sh │ │ │ ├── linux │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ │ ├── mac │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ └── test.sh │ │ │ └── windows │ │ │ │ ├── dev.sh │ │ │ │ ├── release.sh │ │ │ │ ├── test.sh │ │ │ │ └── win32.sh │ │ └── profiles │ │ │ ├── dev │ │ │ ├── cert │ │ │ │ └── client.crt │ │ │ ├── config.toml │ │ │ └── log.xml │ │ │ ├── release │ │ │ ├── cert │ │ │ │ └── client.crt │ │ │ ├── config.toml │ │ │ └── log.xml │ │ │ └── test │ │ │ ├── cert │ │ │ └── client.crt │ │ │ ├── config.toml │ │ │ └── log.xml │ ├── js-client │ │ ├── addr.js │ │ ├── encoding.js │ │ ├── index.html │ │ ├── jquery-1.10.2.min.js │ │ ├── main.js │ │ ├── struct.min.js │ │ └── style.css │ └── server │ │ ├── app │ │ ├── config.go │ │ ├── echo.go │ │ ├── handler.go │ │ ├── readwriter.go │ │ ├── server.go │ │ └── version.go │ │ ├── assembly │ │ ├── bin │ │ │ └── load.sh │ │ ├── common │ │ │ ├── app.properties │ │ │ └── build.sh │ │ ├── linux │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ ├── mac │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── windows │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── profiles │ │ ├── dev │ │ ├── config.toml │ │ └── log.xml │ │ ├── release │ │ ├── config.toml │ │ └── log.xml │ │ └── test │ │ ├── config.toml │ │ └── log.xml └── wss-echo │ ├── .DS_Store │ ├── change_log.md │ ├── client │ ├── app │ │ ├── client.go │ │ ├── config.go │ │ ├── echo.go │ │ ├── handler.go │ │ ├── main.go │ │ ├── readwriter.go │ │ └── version.go │ ├── assembly │ │ ├── bin │ │ │ └── load.sh │ │ ├── common │ │ │ ├── app.properties │ │ │ └── build.sh │ │ ├── linux │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ ├── mac │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── windows │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ ├── test.sh │ │ │ └── win32.sh │ └── profiles │ │ ├── dev │ │ ├── cert │ │ │ └── client.crt │ │ ├── config.toml │ │ └── log.xml │ │ ├── release │ │ ├── cert │ │ │ └── client.crt │ │ ├── config.toml │ │ └── log.xml │ │ └── test │ │ ├── cert │ │ └── client.crt │ │ ├── config.toml │ │ └── log.xml │ ├── js-client │ ├── addr.js │ ├── encoding.js │ ├── index.html │ ├── jquery-1.10.2.min.js │ ├── main.js │ ├── struct.min.js │ └── style.css │ └── server │ ├── app │ ├── config.go │ ├── echo.go │ ├── handler.go │ ├── readwriter.go │ ├── server.go │ └── version.go │ ├── assembly │ ├── bin │ │ └── load.sh │ ├── common │ │ ├── app.properties │ │ └── build.sh │ ├── linux │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ ├── mac │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ └── windows │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ └── profiles │ ├── dev │ ├── cert │ │ ├── cert.sh │ │ ├── server.crt │ │ └── server.key │ ├── config.toml │ └── log.xml │ ├── release │ ├── cert │ │ ├── cert.sh │ │ ├── server.crt │ │ └── server.key │ ├── config.toml │ └── log.xml │ └── test │ ├── cert │ ├── cert.sh │ ├── server.crt │ └── server.key │ ├── config.toml │ └── log.xml ├── go.mod ├── go.sum ├── micro ├── change_log.md ├── client │ ├── app │ │ ├── config.go │ │ ├── main.go │ │ ├── service.pb.go │ │ ├── test.go │ │ └── version.go │ ├── assembly │ │ ├── bin │ │ │ └── load.sh │ │ ├── common │ │ │ ├── app.properties │ │ │ └── build.sh │ │ ├── linux │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ ├── mac │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── windows │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ └── profiles │ │ ├── dev │ │ ├── config.yml │ │ └── log.xml │ │ ├── release │ │ ├── config.yml │ │ └── log.xml │ │ └── test │ │ ├── config.yml │ │ └── log.xml ├── proto │ ├── pb.sh │ ├── service.pb.go │ ├── service.proto │ └── test.go └── server │ ├── app │ ├── config.go │ ├── server.go │ ├── service.pb.go │ ├── test.go │ └── version.go │ ├── assembly │ ├── bin │ │ └── load.sh │ ├── common │ │ ├── app.properties │ │ └── build.sh │ ├── linux │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ ├── mac │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ └── windows │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ └── profiles │ ├── dev │ ├── config.yml │ └── log.xml │ ├── release │ ├── config.yml │ └── log.xml │ └── test │ ├── config.yml │ └── log.xml ├── readme.md ├── rpc ├── change_log.md ├── client │ ├── app │ │ ├── config.go │ │ ├── main.go │ │ ├── service.pb.go │ │ ├── test.go │ │ └── version.go │ ├── assembly │ │ ├── bin │ │ │ └── load.sh │ │ ├── common │ │ │ ├── app.properties │ │ │ └── build.sh │ │ ├── linux │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ ├── mac │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ │ └── windows │ │ │ ├── dev.sh │ │ │ ├── release.sh │ │ │ └── test.sh │ └── profiles │ │ ├── dev │ │ ├── config.yml │ │ └── log.xml │ │ ├── release │ │ ├── config.yml │ │ └── log.xml │ │ └── test │ │ ├── config.yml │ │ └── log.xml ├── proto │ ├── pb.sh │ ├── service.pb.go │ ├── service.proto │ └── test.go └── server │ ├── app │ ├── config.go │ ├── server.go │ ├── service.pb.go │ ├── test.go │ └── version.go │ ├── assembly │ ├── bin │ │ └── load.sh │ ├── common │ │ ├── app.properties │ │ └── build.sh │ ├── linux │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ ├── mac │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ └── windows │ │ ├── dev.sh │ │ ├── release.sh │ │ └── test.sh │ └── profiles │ ├── dev │ ├── config.yml │ └── log.xml │ ├── release │ ├── config.yml │ └── log.xml │ └── test │ ├── config.yml │ └── log.xml └── vendor ├── github.com ├── AlexStocks │ ├── getty │ │ ├── LICENSE │ │ ├── micro │ │ │ ├── client.go │ │ │ ├── config.go │ │ │ └── server.go │ │ ├── rpc │ │ │ ├── client.go │ │ │ ├── codec.go │ │ │ ├── codec.pb.go │ │ │ ├── config.go │ │ │ ├── listener.go │ │ │ ├── pool.go │ │ │ ├── readwriter.go │ │ │ ├── rpc.go │ │ │ ├── rpcclientmap.go │ │ │ ├── server.go │ │ │ └── util.go │ │ └── transport │ │ │ ├── client.go │ │ │ ├── connection.go │ │ │ ├── const.go │ │ │ ├── getty.go │ │ │ ├── options.go │ │ │ ├── server.go │ │ │ ├── session.go │ │ │ └── version.go │ ├── goext │ │ ├── LICENSE │ │ ├── container │ │ │ ├── array │ │ │ │ └── array.go │ │ │ ├── set │ │ │ │ ├── LICENSE │ │ │ │ └── strset │ │ │ │ │ └── strset.go │ │ │ └── xorlist │ │ │ │ ├── xorlist.go │ │ │ │ └── xorlist_output.go │ │ ├── context │ │ │ └── values.go │ │ ├── database │ │ │ ├── etcd │ │ │ │ ├── client.go │ │ │ │ └── options.go │ │ │ ├── filter │ │ │ │ ├── filter.go │ │ │ │ ├── options.go │ │ │ │ ├── pool │ │ │ │ │ ├── filter.go │ │ │ │ │ └── options.go │ │ │ │ └── service.go │ │ │ ├── registry │ │ │ │ ├── etcdv3 │ │ │ │ │ ├── registry.go │ │ │ │ │ └── watcher.go │ │ │ │ ├── options.go │ │ │ │ ├── registry.go │ │ │ │ ├── service.pb.go │ │ │ │ ├── watcher.go │ │ │ │ └── zookeeper │ │ │ │ │ ├── registry.go │ │ │ │ │ └── watcher.go │ │ │ └── zookeeper │ │ │ │ └── client.go │ │ ├── log │ │ │ ├── color.go │ │ │ ├── log4go.go │ │ │ ├── log_test.xml │ │ │ └── pretty.go │ │ ├── net │ │ │ ├── ip.go │ │ │ └── net.go │ │ ├── os │ │ │ ├── file.go │ │ │ └── path.go │ │ ├── runtime │ │ │ ├── goid.go │ │ │ └── goroutine_pool.go │ │ ├── strings │ │ │ ├── nil.go │ │ │ ├── slice.go │ │ │ ├── strings.go │ │ │ └── uuid.go │ │ └── time │ │ │ ├── README.md │ │ │ ├── count.go │ │ │ ├── parse.go │ │ │ ├── sleep.go │ │ │ ├── strftime.go │ │ │ ├── ticker.go │ │ │ ├── time.go │ │ │ ├── timer.go │ │ │ └── wheel.go │ └── log4go │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── buffile.go │ │ ├── change_log.md │ │ ├── color.go │ │ ├── config.go │ │ ├── filelog.go │ │ ├── log4go.go │ │ ├── logrecord.go │ │ ├── pattlog.go │ │ ├── socklog.go │ │ ├── termlog.go │ │ ├── version.go │ │ └── wrapper.go ├── BurntSushi │ └── toml │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── COMPATIBLE │ │ ├── COPYING │ │ ├── Makefile │ │ ├── README.md │ │ ├── decode.go │ │ ├── decode_meta.go │ │ ├── doc.go │ │ ├── encode.go │ │ ├── encoding_types.go │ │ ├── encoding_types_1.1.go │ │ ├── lex.go │ │ ├── parse.go │ │ ├── session.vim │ │ ├── type_check.go │ │ └── type_fields.go ├── coreos │ ├── etcd │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── auth │ │ │ └── authpb │ │ │ │ ├── auth.pb.go │ │ │ │ └── auth.proto │ │ ├── clientv3 │ │ │ ├── auth.go │ │ │ ├── balancer │ │ │ │ ├── balancer.go │ │ │ │ ├── connectivity │ │ │ │ │ └── connectivity.go │ │ │ │ ├── picker │ │ │ │ │ ├── doc.go │ │ │ │ │ ├── err.go │ │ │ │ │ ├── picker.go │ │ │ │ │ └── roundrobin_balanced.go │ │ │ │ ├── resolver │ │ │ │ │ └── endpoint │ │ │ │ │ │ └── endpoint.go │ │ │ │ └── utils.go │ │ │ ├── client.go │ │ │ ├── cluster.go │ │ │ ├── compact_op.go │ │ │ ├── compare.go │ │ │ ├── config.go │ │ │ ├── credentials │ │ │ │ └── credentials.go │ │ │ ├── doc.go │ │ │ ├── kv.go │ │ │ ├── lease.go │ │ │ ├── logger.go │ │ │ ├── maintenance.go │ │ │ ├── op.go │ │ │ ├── options.go │ │ │ ├── retry.go │ │ │ ├── retry_interceptor.go │ │ │ ├── sort.go │ │ │ ├── txn.go │ │ │ ├── utils.go │ │ │ └── watch.go │ │ ├── etcdserver │ │ │ ├── api │ │ │ │ └── v3rpc │ │ │ │ │ └── rpctypes │ │ │ │ │ ├── doc.go │ │ │ │ │ ├── error.go │ │ │ │ │ ├── md.go │ │ │ │ │ └── metadatafields.go │ │ │ └── etcdserverpb │ │ │ │ ├── etcdserver.pb.go │ │ │ │ ├── etcdserver.proto │ │ │ │ ├── raft_internal.pb.go │ │ │ │ ├── raft_internal.proto │ │ │ │ ├── raft_internal_stringer.go │ │ │ │ ├── rpc.pb.go │ │ │ │ └── rpc.proto │ │ ├── mvcc │ │ │ └── mvccpb │ │ │ │ ├── kv.pb.go │ │ │ │ └── kv.proto │ │ ├── pkg │ │ │ ├── logutil │ │ │ │ ├── discard_logger.go │ │ │ │ ├── doc.go │ │ │ │ ├── log_level.go │ │ │ │ ├── logger.go │ │ │ │ ├── merge_logger.go │ │ │ │ ├── package_logger.go │ │ │ │ ├── zap.go │ │ │ │ ├── zap_grpc.go │ │ │ │ ├── zap_journal.go │ │ │ │ └── zap_raft.go │ │ │ ├── systemd │ │ │ │ ├── doc.go │ │ │ │ └── journal.go │ │ │ └── types │ │ │ │ ├── doc.go │ │ │ │ ├── id.go │ │ │ │ ├── set.go │ │ │ │ ├── slice.go │ │ │ │ ├── urls.go │ │ │ │ └── urlsmap.go │ │ └── raft │ │ │ ├── README.md │ │ │ ├── design.md │ │ │ ├── doc.go │ │ │ ├── log.go │ │ │ ├── log_unstable.go │ │ │ ├── logger.go │ │ │ ├── node.go │ │ │ ├── progress.go │ │ │ ├── raft.go │ │ │ ├── raftpb │ │ │ ├── raft.pb.go │ │ │ └── raft.proto │ │ │ ├── rawnode.go │ │ │ ├── read_only.go │ │ │ ├── status.go │ │ │ ├── storage.go │ │ │ └── util.go │ ├── go-systemd │ │ ├── LICENSE │ │ ├── NOTICE │ │ └── journal │ │ │ └── journal.go │ └── pkg │ │ ├── LICENSE │ │ ├── NOTICE │ │ └── capnslog │ │ ├── README.md │ │ ├── formatters.go │ │ ├── glog_formatter.go │ │ ├── init.go │ │ ├── init_windows.go │ │ ├── journald_formatter.go │ │ ├── log_hijack.go │ │ ├── logmap.go │ │ ├── pkg_logger.go │ │ └── syslog_formatter.go ├── davecgh │ └── go-spew │ │ ├── LICENSE │ │ └── spew │ │ ├── bypass.go │ │ ├── bypasssafe.go │ │ ├── common.go │ │ ├── config.go │ │ ├── doc.go │ │ ├── dump.go │ │ ├── format.go │ │ └── spew.go ├── dubbogo │ └── gost │ │ ├── LICENSE │ │ ├── bytes │ │ ├── bytes_buffer_pool.go │ │ ├── bytes_pool.go │ │ └── slice_pool.go │ │ ├── context │ │ └── context.go │ │ ├── net │ │ └── net.go │ │ ├── sync │ │ └── task_pool.go │ │ └── time │ │ ├── count.go │ │ ├── time.go │ │ └── wheel.go ├── fatih │ ├── camelcase │ │ ├── .travis.yml │ │ ├── LICENSE.md │ │ ├── README.md │ │ └── camelcase.go │ └── structs │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── field.go │ │ ├── structs.go │ │ └── tags.go ├── gogo │ └── protobuf │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── gogoproto │ │ ├── Makefile │ │ ├── doc.go │ │ ├── gogo.pb.go │ │ ├── gogo.pb.golden │ │ ├── gogo.proto │ │ └── helper.go │ │ ├── proto │ │ ├── Makefile │ │ ├── clone.go │ │ ├── custom_gogo.go │ │ ├── decode.go │ │ ├── deprecated.go │ │ ├── discard.go │ │ ├── duration.go │ │ ├── duration_gogo.go │ │ ├── encode.go │ │ ├── encode_gogo.go │ │ ├── equal.go │ │ ├── extensions.go │ │ ├── extensions_gogo.go │ │ ├── lib.go │ │ ├── lib_gogo.go │ │ ├── message_set.go │ │ ├── pointer_reflect.go │ │ ├── pointer_reflect_gogo.go │ │ ├── pointer_unsafe.go │ │ ├── pointer_unsafe_gogo.go │ │ ├── properties.go │ │ ├── properties_gogo.go │ │ ├── skip_gogo.go │ │ ├── table_marshal.go │ │ ├── table_marshal_gogo.go │ │ ├── table_merge.go │ │ ├── table_unmarshal.go │ │ ├── table_unmarshal_gogo.go │ │ ├── text.go │ │ ├── text_gogo.go │ │ ├── text_parser.go │ │ ├── timestamp.go │ │ ├── timestamp_gogo.go │ │ ├── wrappers.go │ │ └── wrappers_gogo.go │ │ ├── protoc-gen-gogo │ │ └── descriptor │ │ │ ├── Makefile │ │ │ ├── descriptor.go │ │ │ ├── descriptor.pb.go │ │ │ ├── descriptor_gostring.gen.go │ │ │ └── helper.go │ │ └── sortkeys │ │ └── sortkeys.go ├── golang │ ├── protobuf │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── proto │ │ │ ├── clone.go │ │ │ ├── decode.go │ │ │ ├── deprecated.go │ │ │ ├── discard.go │ │ │ ├── encode.go │ │ │ ├── equal.go │ │ │ ├── extensions.go │ │ │ ├── lib.go │ │ │ ├── message_set.go │ │ │ ├── pointer_reflect.go │ │ │ ├── pointer_unsafe.go │ │ │ ├── properties.go │ │ │ ├── table_marshal.go │ │ │ ├── table_merge.go │ │ │ ├── table_unmarshal.go │ │ │ ├── text.go │ │ │ └── text_parser.go │ │ ├── protoc-gen-go │ │ │ └── descriptor │ │ │ │ ├── descriptor.pb.go │ │ │ │ └── descriptor.proto │ │ └── ptypes │ │ │ ├── any.go │ │ │ ├── any │ │ │ ├── any.pb.go │ │ │ └── any.proto │ │ │ ├── doc.go │ │ │ ├── duration.go │ │ │ ├── duration │ │ │ ├── duration.pb.go │ │ │ └── duration.proto │ │ │ ├── timestamp.go │ │ │ └── timestamp │ │ │ ├── timestamp.pb.go │ │ │ └── timestamp.proto │ └── snappy │ │ ├── .gitignore │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── README │ │ ├── decode.go │ │ ├── decode_amd64.go │ │ ├── decode_amd64.s │ │ ├── decode_other.go │ │ ├── encode.go │ │ ├── encode_amd64.go │ │ ├── encode_amd64.s │ │ ├── encode_other.go │ │ ├── go.mod │ │ └── snappy.go ├── google │ └── uuid │ │ ├── .travis.yml │ │ ├── CONTRIBUTING.md │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── README.md │ │ ├── dce.go │ │ ├── doc.go │ │ ├── go.mod │ │ ├── hash.go │ │ ├── marshal.go │ │ ├── node.go │ │ ├── node_js.go │ │ ├── node_net.go │ │ ├── sql.go │ │ ├── time.go │ │ ├── util.go │ │ ├── uuid.go │ │ ├── version1.go │ │ └── version4.go ├── gorilla │ └── websocket │ │ ├── .gitignore │ │ ├── AUTHORS │ │ ├── LICENSE │ │ ├── README.md │ │ ├── client.go │ │ ├── client_clone.go │ │ ├── client_clone_legacy.go │ │ ├── compression.go │ │ ├── conn.go │ │ ├── conn_write.go │ │ ├── conn_write_legacy.go │ │ ├── doc.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── join.go │ │ ├── json.go │ │ ├── mask.go │ │ ├── mask_safe.go │ │ ├── prepared.go │ │ ├── proxy.go │ │ ├── server.go │ │ ├── trace.go │ │ ├── trace_17.go │ │ ├── util.go │ │ └── x_net_proxy.go ├── json-iterator │ └── go │ │ ├── .codecov.yml │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── Gopkg.lock │ │ ├── Gopkg.toml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── adapter.go │ │ ├── any.go │ │ ├── any_array.go │ │ ├── any_bool.go │ │ ├── any_float.go │ │ ├── any_int32.go │ │ ├── any_int64.go │ │ ├── any_invalid.go │ │ ├── any_nil.go │ │ ├── any_number.go │ │ ├── any_object.go │ │ ├── any_str.go │ │ ├── any_uint32.go │ │ ├── any_uint64.go │ │ ├── build.sh │ │ ├── config.go │ │ ├── fuzzy_mode_convert_table.md │ │ ├── go.mod │ │ ├── go.sum │ │ ├── iter.go │ │ ├── iter_array.go │ │ ├── iter_float.go │ │ ├── iter_int.go │ │ ├── iter_object.go │ │ ├── iter_skip.go │ │ ├── iter_skip_sloppy.go │ │ ├── iter_skip_strict.go │ │ ├── iter_str.go │ │ ├── jsoniter.go │ │ ├── pool.go │ │ ├── reflect.go │ │ ├── reflect_array.go │ │ ├── reflect_dynamic.go │ │ ├── reflect_extension.go │ │ ├── reflect_json_number.go │ │ ├── reflect_json_raw_message.go │ │ ├── reflect_map.go │ │ ├── reflect_marshaler.go │ │ ├── reflect_native.go │ │ ├── reflect_optional.go │ │ ├── reflect_slice.go │ │ ├── reflect_struct_decoder.go │ │ ├── reflect_struct_encoder.go │ │ ├── stream.go │ │ ├── stream_float.go │ │ ├── stream_int.go │ │ ├── stream_str.go │ │ └── test.sh ├── juju │ └── errors │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── dependencies.tsv │ │ ├── doc.go │ │ ├── error.go │ │ ├── errortypes.go │ │ ├── functions.go │ │ └── path.go ├── k0kubun │ └── pp │ │ ├── CHANGELOG.md │ │ ├── LICENSE.txt │ │ ├── README.md │ │ ├── color.go │ │ ├── pp.go │ │ ├── printer.go │ │ └── wercker.yml ├── koding │ └── multiconfig │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc.go │ │ ├── env.go │ │ ├── file.go │ │ ├── flag.go │ │ ├── multiconfig.go │ │ ├── multiloader.go │ │ ├── multivalidator.go │ │ ├── tag.go │ │ └── validator.go ├── mailru │ └── easyjson │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── buffer │ │ └── pool.go │ │ ├── go.mod │ │ ├── helpers.go │ │ ├── jlexer │ │ ├── bytestostr.go │ │ ├── bytestostr_nounsafe.go │ │ ├── error.go │ │ └── lexer.go │ │ ├── jwriter │ │ └── writer.go │ │ ├── raw.go │ │ └── unknown_fields.go ├── mattn │ ├── go-colorable │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── colorable_appengine.go │ │ ├── colorable_others.go │ │ ├── colorable_windows.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── go.test.sh │ │ └── noncolorable.go │ └── go-isatty │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── doc.go │ │ ├── go.mod │ │ ├── go.sum │ │ ├── go.test.sh │ │ ├── isatty_bsd.go │ │ ├── isatty_others.go │ │ ├── isatty_plan9.go │ │ ├── isatty_solaris.go │ │ ├── isatty_tcgets.go │ │ ├── isatty_windows.go │ │ └── renovate.json ├── modern-go │ ├── concurrent │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── executor.go │ │ ├── go_above_19.go │ │ ├── go_below_19.go │ │ ├── log.go │ │ ├── test.sh │ │ └── unbounded_executor.go │ └── reflect2 │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── Gopkg.lock │ │ ├── Gopkg.toml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── go_above_17.go │ │ ├── go_above_19.go │ │ ├── go_below_17.go │ │ ├── go_below_19.go │ │ ├── reflect2.go │ │ ├── reflect2_amd64.s │ │ ├── reflect2_kind.go │ │ ├── relfect2_386.s │ │ ├── relfect2_amd64p32.s │ │ ├── relfect2_arm.s │ │ ├── relfect2_arm64.s │ │ ├── relfect2_mips64x.s │ │ ├── relfect2_mipsx.s │ │ ├── relfect2_ppc64x.s │ │ ├── relfect2_s390x.s │ │ ├── safe_field.go │ │ ├── safe_map.go │ │ ├── safe_slice.go │ │ ├── safe_struct.go │ │ ├── safe_type.go │ │ ├── test.sh │ │ ├── type_map.go │ │ ├── unsafe_array.go │ │ ├── unsafe_eface.go │ │ ├── unsafe_field.go │ │ ├── unsafe_iface.go │ │ ├── unsafe_link.go │ │ ├── unsafe_map.go │ │ ├── unsafe_ptr.go │ │ ├── unsafe_slice.go │ │ ├── unsafe_struct.go │ │ └── unsafe_type.go ├── pkg │ └── errors │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── appveyor.yml │ │ ├── errors.go │ │ └── stack.go └── samuel │ └── go-zookeeper │ ├── LICENSE │ └── zk │ ├── conn.go │ ├── constants.go │ ├── dnshostprovider.go │ ├── flw.go │ ├── lock.go │ ├── structs.go │ └── util.go ├── go.etcd.io └── etcd │ ├── LICENSE │ ├── NOTICE │ └── clientv3 │ ├── auth.go │ ├── client.go │ ├── cluster.go │ ├── compact_op.go │ ├── compare.go │ ├── concurrency │ ├── doc.go │ ├── election.go │ ├── key.go │ ├── mutex.go │ ├── session.go │ └── stm.go │ ├── config.go │ ├── doc.go │ ├── kv.go │ ├── lease.go │ ├── logger.go │ ├── maintenance.go │ ├── op.go │ ├── options.go │ ├── retry.go │ ├── retry_interceptor.go │ ├── sort.go │ ├── txn.go │ ├── utils.go │ └── watch.go ├── go.uber.org ├── atomic │ ├── .codecov.yml │ ├── .gitignore │ ├── .travis.yml │ ├── CHANGELOG.md │ ├── LICENSE.txt │ ├── Makefile │ ├── README.md │ ├── atomic.go │ ├── error.go │ ├── go.mod │ ├── go.sum │ ├── string.go │ └── tools.go ├── multierr │ ├── .codecov.yml │ ├── .gitignore │ ├── .travis.yml │ ├── CHANGELOG.md │ ├── LICENSE.txt │ ├── Makefile │ ├── README.md │ ├── error.go │ ├── glide.yaml │ ├── go.mod │ ├── go.sum │ ├── go113.go │ └── tools.go ├── tools │ ├── LICENSE │ └── update-license │ │ ├── .gitignore │ │ ├── README.md │ │ ├── licenses.go │ │ └── main.go └── zap │ ├── .codecov.yml │ ├── .gitignore │ ├── .readme.tmpl │ ├── .travis.yml │ ├── CHANGELOG.md │ ├── CODE_OF_CONDUCT.md │ ├── CONTRIBUTING.md │ ├── FAQ.md │ ├── LICENSE.txt │ ├── Makefile │ ├── README.md │ ├── array.go │ ├── buffer │ ├── buffer.go │ └── pool.go │ ├── checklicense.sh │ ├── config.go │ ├── doc.go │ ├── encoder.go │ ├── error.go │ ├── field.go │ ├── flag.go │ ├── glide.yaml │ ├── global.go │ ├── global_go112.go │ ├── global_prego112.go │ ├── go.mod │ ├── go.sum │ ├── http_handler.go │ ├── internal │ ├── bufferpool │ │ └── bufferpool.go │ ├── color │ │ └── color.go │ └── exit │ │ └── exit.go │ ├── level.go │ ├── logger.go │ ├── options.go │ ├── sink.go │ ├── stacktrace.go │ ├── sugar.go │ ├── time.go │ ├── tools.go │ ├── writer.go │ └── zapcore │ ├── console_encoder.go │ ├── core.go │ ├── doc.go │ ├── encoder.go │ ├── entry.go │ ├── error.go │ ├── field.go │ ├── hook.go │ ├── increase_level.go │ ├── json_encoder.go │ ├── level.go │ ├── level_strings.go │ ├── marshaler.go │ ├── memory_encoder.go │ ├── sampler.go │ ├── tee.go │ └── write_syncer.go ├── golang.org └── x │ ├── lint │ ├── .travis.yml │ ├── CONTRIBUTING.md │ ├── LICENSE │ ├── README.md │ ├── go.mod │ ├── go.sum │ ├── golint │ │ ├── golint.go │ │ ├── import.go │ │ └── importcomment.go │ └── lint.go │ ├── net │ ├── AUTHORS │ ├── CONTRIBUTORS │ ├── LICENSE │ ├── PATENTS │ ├── http │ │ └── httpguts │ │ │ ├── guts.go │ │ │ └── httplex.go │ ├── http2 │ │ ├── .gitignore │ │ ├── Dockerfile │ │ ├── Makefile │ │ ├── README │ │ ├── ciphers.go │ │ ├── client_conn_pool.go │ │ ├── databuffer.go │ │ ├── errors.go │ │ ├── flow.go │ │ ├── frame.go │ │ ├── go111.go │ │ ├── gotrack.go │ │ ├── headermap.go │ │ ├── hpack │ │ │ ├── encode.go │ │ │ ├── hpack.go │ │ │ ├── huffman.go │ │ │ └── tables.go │ │ ├── http2.go │ │ ├── not_go111.go │ │ ├── pipe.go │ │ ├── server.go │ │ ├── transport.go │ │ ├── write.go │ │ ├── writesched.go │ │ ├── writesched_priority.go │ │ └── writesched_random.go │ ├── idna │ │ ├── idna10.0.0.go │ │ ├── idna9.0.0.go │ │ ├── punycode.go │ │ ├── tables10.0.0.go │ │ ├── tables11.0.0.go │ │ ├── tables12.00.go │ │ ├── tables9.0.0.go │ │ ├── trie.go │ │ └── trieval.go │ ├── internal │ │ └── timeseries │ │ │ └── timeseries.go │ └── trace │ │ ├── events.go │ │ ├── histogram.go │ │ └── trace.go │ ├── sys │ ├── AUTHORS │ ├── CONTRIBUTORS │ ├── LICENSE │ ├── PATENTS │ └── unix │ │ ├── .gitignore │ │ ├── README.md │ │ ├── affinity_linux.go │ │ ├── aliases.go │ │ ├── asm_aix_ppc64.s │ │ ├── asm_darwin_386.s │ │ ├── asm_darwin_amd64.s │ │ ├── asm_darwin_arm.s │ │ ├── asm_darwin_arm64.s │ │ ├── asm_dragonfly_amd64.s │ │ ├── asm_freebsd_386.s │ │ ├── asm_freebsd_amd64.s │ │ ├── asm_freebsd_arm.s │ │ ├── asm_freebsd_arm64.s │ │ ├── asm_linux_386.s │ │ ├── asm_linux_amd64.s │ │ ├── asm_linux_arm.s │ │ ├── asm_linux_arm64.s │ │ ├── asm_linux_mips64x.s │ │ ├── asm_linux_mipsx.s │ │ ├── asm_linux_ppc64x.s │ │ ├── asm_linux_riscv64.s │ │ ├── asm_linux_s390x.s │ │ ├── asm_netbsd_386.s │ │ ├── asm_netbsd_amd64.s │ │ ├── asm_netbsd_arm.s │ │ ├── asm_netbsd_arm64.s │ │ ├── asm_openbsd_386.s │ │ ├── asm_openbsd_amd64.s │ │ ├── asm_openbsd_arm.s │ │ ├── asm_openbsd_arm64.s │ │ ├── asm_solaris_amd64.s │ │ ├── bluetooth_linux.go │ │ ├── cap_freebsd.go │ │ ├── constants.go │ │ ├── dev_aix_ppc.go │ │ ├── dev_aix_ppc64.go │ │ ├── dev_darwin.go │ │ ├── dev_dragonfly.go │ │ ├── dev_freebsd.go │ │ ├── dev_linux.go │ │ ├── dev_netbsd.go │ │ ├── dev_openbsd.go │ │ ├── dirent.go │ │ ├── endian_big.go │ │ ├── endian_little.go │ │ ├── env_unix.go │ │ ├── errors_freebsd_386.go │ │ ├── errors_freebsd_amd64.go │ │ ├── errors_freebsd_arm.go │ │ ├── fcntl.go │ │ ├── fcntl_darwin.go │ │ ├── fcntl_linux_32bit.go │ │ ├── fdset.go │ │ ├── gccgo.go │ │ ├── gccgo_c.c │ │ ├── gccgo_linux_amd64.go │ │ ├── ioctl.go │ │ ├── mkall.sh │ │ ├── mkerrors.sh │ │ ├── pagesize_unix.go │ │ ├── pledge_openbsd.go │ │ ├── race.go │ │ ├── race0.go │ │ ├── readdirent_getdents.go │ │ ├── readdirent_getdirentries.go │ │ ├── sockcmsg_dragonfly.go │ │ ├── sockcmsg_linux.go │ │ ├── sockcmsg_unix.go │ │ ├── sockcmsg_unix_other.go │ │ ├── str.go │ │ ├── syscall.go │ │ ├── syscall_aix.go │ │ ├── syscall_aix_ppc.go │ │ ├── syscall_aix_ppc64.go │ │ ├── syscall_bsd.go │ │ ├── syscall_darwin.1_12.go │ │ ├── syscall_darwin.1_13.go │ │ ├── syscall_darwin.go │ │ ├── syscall_darwin_386.1_11.go │ │ ├── syscall_darwin_386.go │ │ ├── syscall_darwin_amd64.1_11.go │ │ ├── syscall_darwin_amd64.go │ │ ├── syscall_darwin_arm.1_11.go │ │ ├── syscall_darwin_arm.go │ │ ├── syscall_darwin_arm64.1_11.go │ │ ├── syscall_darwin_arm64.go │ │ ├── syscall_darwin_libSystem.go │ │ ├── syscall_dragonfly.go │ │ ├── syscall_dragonfly_amd64.go │ │ ├── syscall_freebsd.go │ │ ├── syscall_freebsd_386.go │ │ ├── syscall_freebsd_amd64.go │ │ ├── syscall_freebsd_arm.go │ │ ├── syscall_freebsd_arm64.go │ │ ├── syscall_linux.go │ │ ├── syscall_linux_386.go │ │ ├── syscall_linux_amd64.go │ │ ├── syscall_linux_amd64_gc.go │ │ ├── syscall_linux_arm.go │ │ ├── syscall_linux_arm64.go │ │ ├── syscall_linux_gc.go │ │ ├── syscall_linux_gc_386.go │ │ ├── syscall_linux_gccgo_386.go │ │ ├── syscall_linux_gccgo_arm.go │ │ ├── syscall_linux_mips64x.go │ │ ├── syscall_linux_mipsx.go │ │ ├── syscall_linux_ppc64x.go │ │ ├── syscall_linux_riscv64.go │ │ ├── syscall_linux_s390x.go │ │ ├── syscall_linux_sparc64.go │ │ ├── syscall_netbsd.go │ │ ├── syscall_netbsd_386.go │ │ ├── syscall_netbsd_amd64.go │ │ ├── syscall_netbsd_arm.go │ │ ├── syscall_netbsd_arm64.go │ │ ├── syscall_openbsd.go │ │ ├── syscall_openbsd_386.go │ │ ├── syscall_openbsd_amd64.go │ │ ├── syscall_openbsd_arm.go │ │ ├── syscall_openbsd_arm64.go │ │ ├── syscall_solaris.go │ │ ├── syscall_solaris_amd64.go │ │ ├── syscall_unix.go │ │ ├── syscall_unix_gc.go │ │ ├── syscall_unix_gc_ppc64x.go │ │ ├── timestruct.go │ │ ├── unveil_openbsd.go │ │ ├── xattr_bsd.go │ │ ├── zerrors_aix_ppc.go │ │ ├── zerrors_aix_ppc64.go │ │ ├── zerrors_darwin_386.go │ │ ├── zerrors_darwin_amd64.go │ │ ├── zerrors_darwin_arm.go │ │ ├── zerrors_darwin_arm64.go │ │ ├── zerrors_dragonfly_amd64.go │ │ ├── zerrors_freebsd_386.go │ │ ├── zerrors_freebsd_amd64.go │ │ ├── zerrors_freebsd_arm.go │ │ ├── zerrors_freebsd_arm64.go │ │ ├── zerrors_linux_386.go │ │ ├── zerrors_linux_amd64.go │ │ ├── zerrors_linux_arm.go │ │ ├── zerrors_linux_arm64.go │ │ ├── zerrors_linux_mips.go │ │ ├── zerrors_linux_mips64.go │ │ ├── zerrors_linux_mips64le.go │ │ ├── zerrors_linux_mipsle.go │ │ ├── zerrors_linux_ppc64.go │ │ ├── zerrors_linux_ppc64le.go │ │ ├── zerrors_linux_riscv64.go │ │ ├── zerrors_linux_s390x.go │ │ ├── zerrors_linux_sparc64.go │ │ ├── zerrors_netbsd_386.go │ │ ├── zerrors_netbsd_amd64.go │ │ ├── zerrors_netbsd_arm.go │ │ ├── zerrors_netbsd_arm64.go │ │ ├── zerrors_openbsd_386.go │ │ ├── zerrors_openbsd_amd64.go │ │ ├── zerrors_openbsd_arm.go │ │ ├── zerrors_openbsd_arm64.go │ │ ├── zerrors_solaris_amd64.go │ │ ├── zptrace_armnn_linux.go │ │ ├── zptrace_linux_arm64.go │ │ ├── zptrace_mipsnn_linux.go │ │ ├── zptrace_mipsnnle_linux.go │ │ ├── zptrace_x86_linux.go │ │ ├── zsyscall_aix_ppc.go │ │ ├── zsyscall_aix_ppc64.go │ │ ├── zsyscall_aix_ppc64_gc.go │ │ ├── zsyscall_aix_ppc64_gccgo.go │ │ ├── zsyscall_darwin_386.1_11.go │ │ ├── zsyscall_darwin_386.1_13.go │ │ ├── zsyscall_darwin_386.1_13.s │ │ ├── zsyscall_darwin_386.go │ │ ├── zsyscall_darwin_386.s │ │ ├── zsyscall_darwin_amd64.1_11.go │ │ ├── zsyscall_darwin_amd64.1_13.go │ │ ├── zsyscall_darwin_amd64.1_13.s │ │ ├── zsyscall_darwin_amd64.go │ │ ├── zsyscall_darwin_amd64.s │ │ ├── zsyscall_darwin_arm.1_11.go │ │ ├── zsyscall_darwin_arm.1_13.go │ │ ├── zsyscall_darwin_arm.1_13.s │ │ ├── zsyscall_darwin_arm.go │ │ ├── zsyscall_darwin_arm.s │ │ ├── zsyscall_darwin_arm64.1_11.go │ │ ├── zsyscall_darwin_arm64.1_13.go │ │ ├── zsyscall_darwin_arm64.1_13.s │ │ ├── zsyscall_darwin_arm64.go │ │ ├── zsyscall_darwin_arm64.s │ │ ├── zsyscall_dragonfly_amd64.go │ │ ├── zsyscall_freebsd_386.go │ │ ├── zsyscall_freebsd_amd64.go │ │ ├── zsyscall_freebsd_arm.go │ │ ├── zsyscall_freebsd_arm64.go │ │ ├── zsyscall_linux_386.go │ │ ├── zsyscall_linux_amd64.go │ │ ├── zsyscall_linux_arm.go │ │ ├── zsyscall_linux_arm64.go │ │ ├── zsyscall_linux_mips.go │ │ ├── zsyscall_linux_mips64.go │ │ ├── zsyscall_linux_mips64le.go │ │ ├── zsyscall_linux_mipsle.go │ │ ├── zsyscall_linux_ppc64.go │ │ ├── zsyscall_linux_ppc64le.go │ │ ├── zsyscall_linux_riscv64.go │ │ ├── zsyscall_linux_s390x.go │ │ ├── zsyscall_linux_sparc64.go │ │ ├── zsyscall_netbsd_386.go │ │ ├── zsyscall_netbsd_amd64.go │ │ ├── zsyscall_netbsd_arm.go │ │ ├── zsyscall_netbsd_arm64.go │ │ ├── zsyscall_openbsd_386.go │ │ ├── zsyscall_openbsd_amd64.go │ │ ├── zsyscall_openbsd_arm.go │ │ ├── zsyscall_openbsd_arm64.go │ │ ├── zsyscall_solaris_amd64.go │ │ ├── zsysctl_openbsd_386.go │ │ ├── zsysctl_openbsd_amd64.go │ │ ├── zsysctl_openbsd_arm.go │ │ ├── zsysctl_openbsd_arm64.go │ │ ├── zsysnum_darwin_386.go │ │ ├── zsysnum_darwin_amd64.go │ │ ├── zsysnum_darwin_arm.go │ │ ├── zsysnum_darwin_arm64.go │ │ ├── zsysnum_dragonfly_amd64.go │ │ ├── zsysnum_freebsd_386.go │ │ ├── zsysnum_freebsd_amd64.go │ │ ├── zsysnum_freebsd_arm.go │ │ ├── zsysnum_freebsd_arm64.go │ │ ├── zsysnum_linux_386.go │ │ ├── zsysnum_linux_amd64.go │ │ ├── zsysnum_linux_arm.go │ │ ├── zsysnum_linux_arm64.go │ │ ├── zsysnum_linux_mips.go │ │ ├── zsysnum_linux_mips64.go │ │ ├── zsysnum_linux_mips64le.go │ │ ├── zsysnum_linux_mipsle.go │ │ ├── zsysnum_linux_ppc64.go │ │ ├── zsysnum_linux_ppc64le.go │ │ ├── zsysnum_linux_riscv64.go │ │ ├── zsysnum_linux_s390x.go │ │ ├── zsysnum_linux_sparc64.go │ │ ├── zsysnum_netbsd_386.go │ │ ├── zsysnum_netbsd_amd64.go │ │ ├── zsysnum_netbsd_arm.go │ │ ├── zsysnum_netbsd_arm64.go │ │ ├── zsysnum_openbsd_386.go │ │ ├── zsysnum_openbsd_amd64.go │ │ ├── zsysnum_openbsd_arm.go │ │ ├── zsysnum_openbsd_arm64.go │ │ ├── ztypes_aix_ppc.go │ │ ├── ztypes_aix_ppc64.go │ │ ├── ztypes_darwin_386.go │ │ ├── ztypes_darwin_amd64.go │ │ ├── ztypes_darwin_arm.go │ │ ├── ztypes_darwin_arm64.go │ │ ├── ztypes_dragonfly_amd64.go │ │ ├── ztypes_freebsd_386.go │ │ ├── ztypes_freebsd_amd64.go │ │ ├── ztypes_freebsd_arm.go │ │ ├── ztypes_freebsd_arm64.go │ │ ├── ztypes_linux_386.go │ │ ├── ztypes_linux_amd64.go │ │ ├── ztypes_linux_arm.go │ │ ├── ztypes_linux_arm64.go │ │ ├── ztypes_linux_mips.go │ │ ├── ztypes_linux_mips64.go │ │ ├── ztypes_linux_mips64le.go │ │ ├── ztypes_linux_mipsle.go │ │ ├── ztypes_linux_ppc64.go │ │ ├── ztypes_linux_ppc64le.go │ │ ├── ztypes_linux_riscv64.go │ │ ├── ztypes_linux_s390x.go │ │ ├── ztypes_linux_sparc64.go │ │ ├── ztypes_netbsd_386.go │ │ ├── ztypes_netbsd_amd64.go │ │ ├── ztypes_netbsd_arm.go │ │ ├── ztypes_netbsd_arm64.go │ │ ├── ztypes_openbsd_386.go │ │ ├── ztypes_openbsd_amd64.go │ │ ├── ztypes_openbsd_arm.go │ │ ├── ztypes_openbsd_arm64.go │ │ └── ztypes_solaris_amd64.go │ ├── text │ ├── AUTHORS │ ├── CONTRIBUTORS │ ├── LICENSE │ ├── PATENTS │ ├── secure │ │ └── bidirule │ │ │ ├── bidirule.go │ │ │ ├── bidirule10.0.0.go │ │ │ └── bidirule9.0.0.go │ ├── transform │ │ └── transform.go │ └── unicode │ │ ├── bidi │ │ ├── bidi.go │ │ ├── bracket.go │ │ ├── core.go │ │ ├── prop.go │ │ ├── tables10.0.0.go │ │ ├── tables9.0.0.go │ │ └── trieval.go │ │ └── norm │ │ ├── composition.go │ │ ├── forminfo.go │ │ ├── input.go │ │ ├── iter.go │ │ ├── normalize.go │ │ ├── readwriter.go │ │ ├── tables10.0.0.go │ │ ├── tables9.0.0.go │ │ ├── transform.go │ │ └── trie.go │ └── tools │ ├── AUTHORS │ ├── CONTRIBUTORS │ ├── LICENSE │ ├── PATENTS │ ├── go │ ├── analysis │ │ ├── analysis.go │ │ ├── diagnostic.go │ │ ├── doc.go │ │ ├── passes │ │ │ └── inspect │ │ │ │ └── inspect.go │ │ └── validate.go │ ├── ast │ │ ├── astutil │ │ │ ├── enclosing.go │ │ │ ├── imports.go │ │ │ ├── rewrite.go │ │ │ └── util.go │ │ └── inspector │ │ │ ├── inspector.go │ │ │ └── typeof.go │ ├── buildutil │ │ ├── allpackages.go │ │ ├── fakecontext.go │ │ ├── overlay.go │ │ ├── tags.go │ │ └── util.go │ ├── gcexportdata │ │ ├── gcexportdata.go │ │ └── importer.go │ ├── internal │ │ ├── gcimporter │ │ │ ├── bexport.go │ │ │ ├── bimport.go │ │ │ ├── exportdata.go │ │ │ ├── gcimporter.go │ │ │ ├── iexport.go │ │ │ ├── iimport.go │ │ │ ├── newInterface10.go │ │ │ └── newInterface11.go │ │ └── packagesdriver │ │ │ └── sizes.go │ ├── packages │ │ ├── doc.go │ │ ├── external.go │ │ ├── golist.go │ │ ├── golist_overlay.go │ │ ├── packages.go │ │ └── visit.go │ └── types │ │ ├── objectpath │ │ └── objectpath.go │ │ └── typeutil │ │ ├── callee.go │ │ ├── imports.go │ │ ├── map.go │ │ ├── methodsetcache.go │ │ └── ui.go │ └── internal │ ├── fastwalk │ ├── fastwalk.go │ ├── fastwalk_dirent_fileno.go │ ├── fastwalk_dirent_ino.go │ ├── fastwalk_dirent_namlen_bsd.go │ ├── fastwalk_dirent_namlen_linux.go │ ├── fastwalk_portable.go │ └── fastwalk_unix.go │ ├── gopathwalk │ └── walk.go │ ├── semver │ └── semver.go │ └── span │ ├── parse.go │ ├── span.go │ ├── token.go │ ├── token111.go │ ├── token112.go │ ├── uri.go │ └── utf16.go ├── google.golang.org ├── genproto │ ├── LICENSE │ └── googleapis │ │ ├── api │ │ └── annotations │ │ │ ├── annotations.pb.go │ │ │ ├── client.pb.go │ │ │ ├── field_behavior.pb.go │ │ │ ├── http.pb.go │ │ │ └── resource.pb.go │ │ └── rpc │ │ └── status │ │ └── status.pb.go └── grpc │ ├── .travis.yml │ ├── AUTHORS │ ├── CODE-OF-CONDUCT.md │ ├── CONTRIBUTING.md │ ├── GOVERNANCE.md │ ├── LICENSE │ ├── MAINTAINERS.md │ ├── Makefile │ ├── README.md │ ├── attributes │ └── attributes.go │ ├── backoff.go │ ├── backoff │ └── backoff.go │ ├── balancer.go │ ├── balancer │ ├── balancer.go │ ├── base │ │ ├── balancer.go │ │ └── base.go │ └── roundrobin │ │ └── roundrobin.go │ ├── balancer_conn_wrappers.go │ ├── balancer_v1_wrapper.go │ ├── binarylog │ └── grpc_binarylog_v1 │ │ └── binarylog.pb.go │ ├── call.go │ ├── clientconn.go │ ├── codec.go │ ├── codegen.sh │ ├── codes │ ├── code_string.go │ └── codes.go │ ├── connectivity │ └── connectivity.go │ ├── credentials │ ├── credentials.go │ ├── go12.go │ ├── internal │ │ ├── syscallconn.go │ │ └── syscallconn_appengine.go │ └── tls.go │ ├── dialoptions.go │ ├── doc.go │ ├── encoding │ ├── encoding.go │ └── proto │ │ └── proto.go │ ├── go.mod │ ├── go.sum │ ├── grpclog │ ├── grpclog.go │ ├── logger.go │ └── loggerv2.go │ ├── install_gae.sh │ ├── interceptor.go │ ├── internal │ ├── backoff │ │ └── backoff.go │ ├── balancerload │ │ └── load.go │ ├── binarylog │ │ ├── binarylog.go │ │ ├── binarylog_testutil.go │ │ ├── env_config.go │ │ ├── method_logger.go │ │ ├── regenerate.sh │ │ ├── sink.go │ │ └── util.go │ ├── buffer │ │ └── unbounded.go │ ├── channelz │ │ ├── funcs.go │ │ ├── types.go │ │ ├── types_linux.go │ │ ├── types_nonlinux.go │ │ ├── util_linux.go │ │ └── util_nonlinux.go │ ├── envconfig │ │ └── envconfig.go │ ├── grpcrand │ │ └── grpcrand.go │ ├── grpcsync │ │ └── event.go │ ├── internal.go │ ├── resolver │ │ ├── dns │ │ │ ├── dns_resolver.go │ │ │ └── go113.go │ │ └── passthrough │ │ │ └── passthrough.go │ ├── syscall │ │ ├── syscall_linux.go │ │ └── syscall_nonlinux.go │ └── transport │ │ ├── bdp_estimator.go │ │ ├── controlbuf.go │ │ ├── defaults.go │ │ ├── flowcontrol.go │ │ ├── handler_server.go │ │ ├── http2_client.go │ │ ├── http2_server.go │ │ ├── http_util.go │ │ ├── log.go │ │ └── transport.go │ ├── keepalive │ └── keepalive.go │ ├── metadata │ └── metadata.go │ ├── naming │ ├── dns_resolver.go │ └── naming.go │ ├── peer │ └── peer.go │ ├── picker_wrapper.go │ ├── pickfirst.go │ ├── preloader.go │ ├── proxy.go │ ├── resolver │ ├── dns │ │ └── dns_resolver.go │ ├── passthrough │ │ └── passthrough.go │ └── resolver.go │ ├── resolver_conn_wrapper.go │ ├── rpc_util.go │ ├── server.go │ ├── service_config.go │ ├── serviceconfig │ └── serviceconfig.go │ ├── stats │ ├── handlers.go │ └── stats.go │ ├── status │ └── status.go │ ├── stream.go │ ├── tap │ └── tap.go │ ├── trace.go │ ├── version.go │ └── vet.sh ├── gopkg.in └── yaml.v2 │ ├── .travis.yml │ ├── LICENSE │ ├── LICENSE.libyaml │ ├── NOTICE │ ├── README.md │ ├── apic.go │ ├── decode.go │ ├── emitterc.go │ ├── encode.go │ ├── go.mod │ ├── parserc.go │ ├── readerc.go │ ├── resolve.go │ ├── scannerc.go │ ├── sorter.go │ ├── writerc.go │ ├── yaml.go │ ├── yamlh.go │ └── yamlprivateh.go ├── honnef.co └── go │ └── tools │ ├── LICENSE │ ├── LICENSE-THIRD-PARTY │ ├── arg │ └── arg.go │ ├── cmd │ └── staticcheck │ │ ├── README.md │ │ └── staticcheck.go │ ├── config │ ├── config.go │ └── example.conf │ ├── deprecated │ └── stdlib.go │ ├── facts │ ├── deprecated.go │ ├── generated.go │ ├── purity.go │ └── token.go │ ├── functions │ ├── loops.go │ ├── pure.go │ └── terminates.go │ ├── go │ └── types │ │ └── typeutil │ │ ├── callee.go │ │ ├── identical.go │ │ ├── imports.go │ │ ├── map.go │ │ ├── methodsetcache.go │ │ └── ui.go │ ├── internal │ ├── cache │ │ ├── cache.go │ │ ├── default.go │ │ └── hash.go │ ├── passes │ │ └── buildssa │ │ │ └── buildssa.go │ ├── renameio │ │ └── renameio.go │ └── sharedcheck │ │ └── lint.go │ ├── lint │ ├── LICENSE │ ├── lint.go │ ├── lintdsl │ │ └── lintdsl.go │ ├── lintutil │ │ ├── format │ │ │ └── format.go │ │ ├── stats.go │ │ ├── stats_bsd.go │ │ ├── stats_posix.go │ │ └── util.go │ ├── runner.go │ └── stats.go │ ├── loader │ └── loader.go │ ├── printf │ ├── fuzz.go │ └── printf.go │ ├── simple │ ├── CONTRIBUTING.md │ ├── analysis.go │ ├── doc.go │ └── lint.go │ ├── ssa │ ├── LICENSE │ ├── blockopt.go │ ├── builder.go │ ├── const.go │ ├── create.go │ ├── doc.go │ ├── dom.go │ ├── emit.go │ ├── func.go │ ├── identical.go │ ├── identical_17.go │ ├── lift.go │ ├── lvalue.go │ ├── methods.go │ ├── mode.go │ ├── print.go │ ├── sanity.go │ ├── source.go │ ├── ssa.go │ ├── staticcheck.conf │ ├── testmain.go │ ├── util.go │ ├── wrappers.go │ └── write.go │ ├── ssautil │ └── ssautil.go │ ├── staticcheck │ ├── CONTRIBUTING.md │ ├── analysis.go │ ├── buildtag.go │ ├── doc.go │ ├── knowledge.go │ ├── lint.go │ ├── rules.go │ ├── structtag.go │ └── vrp │ │ ├── channel.go │ │ ├── int.go │ │ ├── slice.go │ │ ├── string.go │ │ └── vrp.go │ ├── stylecheck │ ├── analysis.go │ ├── doc.go │ ├── lint.go │ └── names.go │ ├── unused │ ├── edge.go │ ├── edgekind_string.go │ ├── implements.go │ └── unused.go │ └── version │ ├── buildinfo.go │ ├── buildinfo111.go │ └── version.go └── modules.txt /docs/getty-benchmark.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/docs/getty-benchmark.doc -------------------------------------------------------------------------------- /docs/question.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/docs/question.doc -------------------------------------------------------------------------------- /echo/tcp-echo/client/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_client" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.yml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/client/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_server" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.yml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/tcp-echo/server/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/change_log.md: -------------------------------------------------------------------------------- 1 | # udp-echo # 2 | --- 3 | *getty udp examples of Echo Example* 4 | 5 | ## LICENSE ## 6 | --- 7 | 8 | > LICENCE : Apache License 2.0 9 | 10 | ## develop history ## 11 | --- 12 | 13 | - 2019/09/05 14 | > feature 15 | * add writev 16 | 17 | - 2018/06/24 18 | > improvement 19 | * delete this, using name abbreviation instead. 20 | 21 | - 2018/03/17 22 | > improvement 23 | * set the timeout parameter of WritePkg 0 to send out package asap. 24 | 25 | - 2018/03/17 26 | > improvement 27 | * UDP_ENDPOINT session should be long live. 28 | 29 | - 2018/03/17 30 | > improvement 31 | * use getty v0.8.2 32 | 33 | - 2018/03/16 34 | > bug fix 35 | * forbid close udp session in OnCron 36 | 37 | - 2018/03/14 38 | > init 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /echo/udp-echo/client/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_client" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.toml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/client/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/server/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_server" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.toml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/udp-echo/server/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/client/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_client" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.toml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/client/assembly/windows/win32.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=386 17 | 18 | PROFILE=test 19 | 20 | PROJECT_HOME=`pwd` 21 | 22 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 23 | . ${PROJECT_HOME}/assembly/common/app.properties 24 | fi 25 | 26 | 27 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 28 | . ${PROJECT_HOME}/assembly/common/build.sh 29 | fi 30 | -------------------------------------------------------------------------------- /echo/ws-echo/js-client/addr.js: -------------------------------------------------------------------------------- 1 | // var serverAddress = '192.168.8.3:10000'; 2 | var serverAddress = '127.0.0.1:10000'; 3 | // var serverAddress = 'localhost:10000'; 4 | -------------------------------------------------------------------------------- /echo/ws-echo/js-client/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Echo Example 6 | 7 | 8 | 9 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /echo/ws-echo/server/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_server" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.toml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/ws-echo/server/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/echo/wss-echo/.DS_Store -------------------------------------------------------------------------------- /echo/wss-echo/client/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_client" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.toml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/client/assembly/windows/win32.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=386 17 | 18 | PROFILE=test 19 | 20 | PROJECT_HOME=`pwd` 21 | 22 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 23 | . ${PROJECT_HOME}/assembly/common/app.properties 24 | fi 25 | 26 | 27 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 28 | . ${PROJECT_HOME}/assembly/common/build.sh 29 | fi 30 | -------------------------------------------------------------------------------- /echo/wss-echo/js-client/addr.js: -------------------------------------------------------------------------------- 1 | // var serverAddress = '192.168.8.3:10000'; 2 | var serverAddress = '127.0.0.1:10000'; 3 | // var serverAddress = 'localhost:10000'; 4 | -------------------------------------------------------------------------------- /echo/wss-echo/js-client/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Echo Example 6 | 7 | 8 | 9 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /echo/wss-echo/server/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="echo_server" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.toml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /echo/wss-echo/server/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /echo/wss-echo/server/profiles/dev/cert/cert.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | openssl genrsa -out server.key 2048 4 | openssl req -new -x509 -key server.key -out server.crt 5 | -------------------------------------------------------------------------------- /echo/wss-echo/server/profiles/release/cert/cert.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | openssl genrsa -out server.key 2048 4 | openssl req -new -x509 -key server.key -out server.crt 5 | -------------------------------------------------------------------------------- /echo/wss-echo/server/profiles/test/cert/cert.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | openssl genrsa -out server.key 2048 4 | openssl req -new -x509 -key server.key -out server.crt 5 | -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- 1 | module github.com/AlexStocks/getty-examples 2 | 3 | go 1.13 4 | 5 | require ( 6 | github.com/AlexStocks/getty v1.2.6 7 | github.com/AlexStocks/goext v0.3.2 8 | github.com/AlexStocks/log4go v1.0.6 9 | github.com/dubbogo/gost v1.6.0 10 | github.com/gogo/protobuf v1.3.1 11 | github.com/juju/errors v0.0.0-20190930114154-d42613fe1ab9 12 | github.com/koding/multiconfig v0.0.0-20171124222453-69c27309b2d7 13 | gopkg.in/yaml.v2 v2.2.8 14 | ) 15 | -------------------------------------------------------------------------------- /micro/change_log.md: -------------------------------------------------------------------------------- 1 | # Micro # 2 | --- 3 | *getty micro examples* 4 | 5 | ## LICENSE ## 6 | --- 7 | 8 | > LICENCE : Apache License 2.0 9 | 10 | ## develop history ## 11 | --- 12 | 13 | - 2019/09/05 14 | > feature 15 | * add writev 16 | 17 | - 2018/08/19 18 | > Feature 19 | * use multiple service config 20 | * Config using yml file instead toml 21 | 22 | - 2018/08/13 23 | > Init 24 | * add client/server 25 | -------------------------------------------------------------------------------- /micro/client/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /micro/client/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="micro_client" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.yml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /micro/client/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/client/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/client/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/client/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/client/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/client/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/client/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/client/assembly/windows/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/client/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/server/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /micro/server/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="micro_server" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.yml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /micro/server/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/server/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/server/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/server/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/server/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/server/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /micro/server/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/server/assembly/windows/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /micro/server/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/change_log.md: -------------------------------------------------------------------------------- 1 | # rpc # 2 | --- 3 | *getty rpc examples* 4 | 5 | ## LICENSE ## 6 | --- 7 | 8 | > LICENCE : Apache License 2.0 9 | 10 | ## develop history ## 11 | --- 12 | 13 | - 2019/09/05 14 | > feature 15 | * add writev 16 | 17 | - 2018/08/06 18 | > Init 19 | * add client/server 20 | -------------------------------------------------------------------------------- /rpc/client/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /rpc/client/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="rpc_client" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.yml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /rpc/client/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/client/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/client/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/client/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/client/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/client/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/client/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/client/assembly/windows/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/client/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/server/app/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | ***************************************************** 3 | # DESC : echo stream parser 4 | # AUTHOR : Alex Stocks 5 | # LICENCE : Apache License 2.0 6 | # EMAIL : alexstocks@foxmail.com 7 | # MOD : 2016-09-04 13:08 8 | # FILE : readwriter.go 9 | ***************************************************** 10 | */ 11 | 12 | package main 13 | 14 | var ( 15 | Version = "1.0.0" 16 | ) 17 | -------------------------------------------------------------------------------- /rpc/server/assembly/common/app.properties: -------------------------------------------------------------------------------- 1 | # getty application configure script 2 | # ****************************************************** 3 | # DESC : application environment variable 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:29 9 | # FILE : app.properties 10 | # ****************************************************** 11 | 12 | export TARGET_EXEC_NAME="rpc_server" 13 | export BUILD_PACKAGE="app" 14 | 15 | export TARGET_CONF_FILE="conf/config.yml" 16 | export TARGET_LOG_CONF_FILE="conf/log.xml" 17 | 18 | -------------------------------------------------------------------------------- /rpc/server/assembly/linux/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/server/assembly/linux/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/server/assembly/linux/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=linux 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/server/assembly/mac/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/server/assembly/mac/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/server/assembly/mac/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=darwin 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/server/assembly/windows/dev.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for dev env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : dev.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="dev" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/server/assembly/windows/release.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for release env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="release" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 26 | sh ${PROJECT_HOME}/assembly/common/build.sh 27 | fi 28 | -------------------------------------------------------------------------------- /rpc/server/assembly/windows/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | # ****************************************************** 3 | # DESC : build script for test env 4 | # AUTHOR : Alex Stocks 5 | # VERSION : 1.0 6 | # LICENCE : Apache License 2.0 7 | # EMAIL : alexstocks@foxmail.com 8 | # MOD : 2016-07-12 16:34 9 | # FILE : test.sh 10 | # ****************************************************** 11 | 12 | 13 | set -e 14 | 15 | export GOOS=windows 16 | export GOARCH=amd64 17 | 18 | export PROFILE="test" 19 | export PROJECT_HOME=`pwd` 20 | 21 | if [ -f "${PROJECT_HOME}/assembly/common/app.properties" ]; then 22 | . ${PROJECT_HOME}/assembly/common/app.properties 23 | fi 24 | 25 | 26 | if [ -f "${PROJECT_HOME}/assembly/common/build.sh" ]; then 27 | sh ${PROJECT_HOME}/assembly/common/build.sh 28 | fi 29 | -------------------------------------------------------------------------------- /rpc/server/profiles/dev/config.yml: -------------------------------------------------------------------------------- 1 | app_name : "RPC-SERVER" 2 | host : "127.0.0.1" 3 | ports : ["10000", "20000"] 4 | profile_port : 10086 5 | 6 | # client与server之间连接的超时时间 7 | session_timeout : "20s" 8 | session_number : 700 9 | 10 | fail_fast_timeout : "3s" 11 | 12 | # tcp 13 | getty_session_param: 14 | compress_encoding : true 15 | tcp_no_delay : true 16 | tcp_keep_alive : true 17 | keep_alive_period : "120s" 18 | tcp_r_buf_size : 262144 19 | tcp_w_buf_size : 524288 20 | pkg_rq_size : 1024 21 | pkg_wq_size : 512 22 | tcp_read_timeout : "1s" 23 | tcp_write_timeout : "5s" 24 | wait_timeout : "1s" 25 | max_msg_len : 1024 26 | session_name : "getty-rpc-server" 27 | 28 | -------------------------------------------------------------------------------- /rpc/server/profiles/release/config.yml: -------------------------------------------------------------------------------- 1 | app_name : "RPC-SERVER" 2 | host : "127.0.0.1" 3 | ports : ["10000", "20000"] 4 | profile_port : 10086 5 | 6 | # client与server之间连接的超时时间 7 | session_timeout : "20s" 8 | session_number : 700 9 | 10 | fail_fast_timeout : "3s" 11 | 12 | # tcp 13 | getty_session_param: 14 | compress_encoding : true 15 | tcp_no_delay : true 16 | tcp_keep_alive : true 17 | keep_alive_period : "120s" 18 | tcp_r_buf_size : 262144 19 | tcp_w_buf_size : 524288 20 | pkg_rq_size : 1024 21 | pkg_wq_size : 512 22 | tcp_read_timeout : "1s" 23 | tcp_write_timeout : "5s" 24 | wait_timeout : "1s" 25 | max_msg_len : 1024 26 | session_name : "getty-rpc-server" 27 | 28 | -------------------------------------------------------------------------------- /rpc/server/profiles/test/config.yml: -------------------------------------------------------------------------------- 1 | app_name : "RPC-SERVER" 2 | host : "127.0.0.1" 3 | ports : ["10000", "20000"] 4 | profile_port : 10086 5 | 6 | # client与server之间连接的超时时间 7 | session_timeout : "20s" 8 | session_number : 700 9 | 10 | fail_fast_timeout : "3s" 11 | 12 | # tcp 13 | getty_session_param: 14 | compress_encoding : true 15 | tcp_no_delay : true 16 | tcp_keep_alive : true 17 | keep_alive_period : "120s" 18 | tcp_r_buf_size : 262144 19 | tcp_w_buf_size : 524288 20 | pkg_rq_size : 1024 21 | pkg_wq_size : 512 22 | tcp_read_timeout : "1s" 23 | tcp_write_timeout : "5s" 24 | wait_timeout : "1s" 25 | max_msg_len : 1024 26 | session_name : "getty-rpc-server" 27 | 28 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/getty/rpc/util.go: -------------------------------------------------------------------------------- 1 | package rpc 2 | 3 | import ( 4 | "math/rand" 5 | "sync" 6 | "time" 7 | ) 8 | 9 | var ( 10 | seededIDGen = rand.New(rand.NewSource(time.Now().UnixNano())) 11 | // The golang rand generators are *not* intrinsically thread-safe. 12 | seededIDLock sync.Mutex 13 | ) 14 | 15 | func randomID() uint64 { 16 | seededIDLock.Lock() 17 | defer seededIDLock.Unlock() 18 | return uint64(seededIDGen.Int63()) 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/getty/transport/version.go: -------------------------------------------------------------------------------- 1 | /****************************************************** 2 | # DESC : getty version 3 | # MAINTAINER : Alex Stocks 4 | # LICENCE : Apache License 2.0 5 | # EMAIL : alexstocks@foxmail.com 6 | # MOD : 2016-08-17 11:23 7 | # FILE : version.go 8 | ******************************************************/ 9 | 10 | package getty 11 | 12 | const ( 13 | Version = "1.2.6" 14 | DATE = "2020/03/02" 15 | GETTY_MAJOR = 1 16 | GETTY_MINOR = 2 17 | GETTY_BUILD = 6 18 | ) -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/goext/container/array/array.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 AlexStocks(https://github.com/AlexStocks). 2 | // All rights reserved. Use of this source code is 3 | // governed by Apache License 2.0. 4 | 5 | // package gxarray provide array/slice related algorithms 6 | package gxarray 7 | 8 | func RemoveElem(array []string, element string) ([]string, bool) { 9 | for i := range array { 10 | if array[i] == element { 11 | array = append(array[:i], array[i+1:]...) 12 | return array, true 13 | } 14 | } 15 | 16 | return array, false 17 | } 18 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/goext/database/registry/watcher.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 ~ 2018 AlexStocks(https://github.com/AlexStocks). 2 | // All rights reserved. Use of this source code is 3 | // governed by Apache License 2.0. 4 | 5 | // Package gxregistry provides a interface for service register/discovery 6 | package gxregistry 7 | 8 | import ( 9 | jerrors "github.com/juju/errors" 10 | ) 11 | 12 | // Watcher provides an interface for service discovery 13 | type Watcher interface { 14 | Notify() (*EventResult, error) 15 | Valid() bool // 检查watcher与registry连接是否正常 16 | Close() 17 | IsClosed() bool 18 | } 19 | 20 | var ( 21 | ErrWatcherClosed = jerrors.Errorf("Watcher closed") 22 | ) 23 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/goext/runtime/goid.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 ~ 2018 AlexStocks(https://github.com/AlexStocks). 2 | // All rights reserved. Use of this source code is 3 | // governed by Apache License 2.0. 4 | 5 | // Package gxruntime encapsulates some runtime functions 6 | 7 | package gxruntime 8 | 9 | import ( 10 | "fmt" 11 | "runtime" 12 | "strconv" 13 | "strings" 14 | ) 15 | 16 | func GoID() int { 17 | var buf [64]byte 18 | n := runtime.Stack(buf[:], false) 19 | idField := strings.Fields(strings.TrimPrefix(string(buf[:n]), "goroutine "))[0] 20 | id, err := strconv.Atoi(idField) 21 | if err != nil { 22 | panic(fmt.Sprintf("cannot get goroutine id: %v", err)) 23 | } 24 | return id 25 | } 26 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/goext/strings/nil.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 ~ 2018 AlexStocks(https://github.com/AlexStocks). 2 | // All rights reserved. Use of this source code is 3 | // governed by Apache License 2.0. 4 | 5 | package gxstrings 6 | 7 | import ( 8 | "reflect" 9 | ) 10 | 11 | func IsNil(i interface{}) bool { 12 | if i == nil { 13 | return true 14 | } 15 | 16 | if reflect.ValueOf(i).IsNil() { 17 | return true 18 | } 19 | 20 | return false 21 | } 22 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/goext/time/README.md: -------------------------------------------------------------------------------- 1 | go-strftime 2 | =========== 3 | 4 | go implementation of strftime 5 | 6 | ## Example 7 | 8 | ``` 9 | package main 10 | 11 | import ( 12 | "fmt" 13 | "time" 14 | 15 | strftime "github.com/jehiah/go-strftime" 16 | ) 17 | 18 | func main() { 19 | t := time.Unix(1340244776, 0) 20 | utc, _ := time.LoadLocation("UTC") 21 | t = t.In(utc) 22 | fmt.Println(strftime.Format("%Y-%m-%d %H:%M:%S", t)) 23 | // Output: 24 | // 2012-06-21 02:12:56 25 | } 26 | ``` 27 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/log4go/.gitignore: -------------------------------------------------------------------------------- 1 | # Binaries for programs and plugins 2 | *.exe 3 | *.exe~ 4 | *.dll 5 | *.so 6 | *.dylib 7 | 8 | # Test binary, build with `go test -c` 9 | *.test 10 | 11 | # Output of the go coverage tool, specifically when used with LiteIDE 12 | *.out 13 | 14 | *.idea 15 | *.iml 16 | target/ 17 | classes 18 | 19 | # go.sum 20 | # Gopkg.lock 21 | # vendor/ -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/log4go/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - "1.11" 5 | - "1.12" 6 | - "1.13" 7 | 8 | script: 9 | - go fmt ./... && [[ -z `git status -s` ]] 10 | - go test . -bench . -race -v 11 | 12 | -------------------------------------------------------------------------------- /vendor/github.com/AlexStocks/log4go/version.go: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2018, Alex Stocks . All rights reserved. 2 | 3 | package log4go 4 | 5 | const ( 6 | Version = "1.0.0" 7 | DATE = "2018/12/01" 8 | GETTY_MAJOR = 1 9 | GETTY_MINOR = 0 10 | GETTY_BUILD = 0 11 | ) 12 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/.gitignore: -------------------------------------------------------------------------------- 1 | TAGS 2 | tags 3 | .*.swp 4 | tomlcheck/tomlcheck 5 | toml.test 6 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - 1.1 4 | - 1.2 5 | - 1.3 6 | - 1.4 7 | - 1.5 8 | - 1.6 9 | - tip 10 | install: 11 | - go install ./... 12 | - go get github.com/BurntSushi/toml-test 13 | script: 14 | - export PATH="$PATH:$HOME/gopath/bin" 15 | - make test 16 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/COMPATIBLE: -------------------------------------------------------------------------------- 1 | Compatible with TOML version 2 | [v0.4.0](https://github.com/toml-lang/toml/blob/v0.4.0/versions/en/toml-v0.4.0.md) 3 | 4 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/Makefile: -------------------------------------------------------------------------------- 1 | install: 2 | go install ./... 3 | 4 | test: install 5 | go test -v 6 | toml-test toml-test-decoder 7 | toml-test -encoder toml-test-encoder 8 | 9 | fmt: 10 | gofmt -w *.go */*.go 11 | colcheck *.go */*.go 12 | 13 | tags: 14 | find ./ -name '*.go' -print0 | xargs -0 gotags > TAGS 15 | 16 | push: 17 | git push origin master 18 | git push github master 19 | 20 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/encoding_types.go: -------------------------------------------------------------------------------- 1 | // +build go1.2 2 | 3 | package toml 4 | 5 | // In order to support Go 1.1, we define our own TextMarshaler and 6 | // TextUnmarshaler types. For Go 1.2+, we just alias them with the 7 | // standard library interfaces. 8 | 9 | import ( 10 | "encoding" 11 | ) 12 | 13 | // TextMarshaler is a synonym for encoding.TextMarshaler. It is defined here 14 | // so that Go 1.1 can be supported. 15 | type TextMarshaler encoding.TextMarshaler 16 | 17 | // TextUnmarshaler is a synonym for encoding.TextUnmarshaler. It is defined 18 | // here so that Go 1.1 can be supported. 19 | type TextUnmarshaler encoding.TextUnmarshaler 20 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/encoding_types_1.1.go: -------------------------------------------------------------------------------- 1 | // +build !go1.2 2 | 3 | package toml 4 | 5 | // These interfaces were introduced in Go 1.2, so we add them manually when 6 | // compiling for Go 1.1. 7 | 8 | // TextMarshaler is a synonym for encoding.TextMarshaler. It is defined here 9 | // so that Go 1.1 can be supported. 10 | type TextMarshaler interface { 11 | MarshalText() (text []byte, err error) 12 | } 13 | 14 | // TextUnmarshaler is a synonym for encoding.TextUnmarshaler. It is defined 15 | // here so that Go 1.1 can be supported. 16 | type TextUnmarshaler interface { 17 | UnmarshalText(text []byte) error 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/BurntSushi/toml/session.vim: -------------------------------------------------------------------------------- 1 | au BufWritePost *.go silent!make tags > /dev/null 2>&1 2 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/etcd/NOTICE: -------------------------------------------------------------------------------- 1 | CoreOS Project 2 | Copyright 2014 CoreOS, Inc 3 | 4 | This product includes software developed at CoreOS, Inc. 5 | (http://www.coreos.com/). 6 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/etcd/clientv3/balancer/picker/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The etcd Authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // Package picker defines/implements client balancer picker policy. 16 | package picker 17 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/etcd/pkg/logutil/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The etcd Authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // Package logutil includes utilities to facilitate logging. 16 | package logutil 17 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/etcd/pkg/systemd/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The etcd Authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // Package systemd provides utility functions for systemd. 16 | package systemd 17 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/etcd/pkg/types/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The etcd Authors 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | // Package types declares various data types and implements type-checking 16 | // functions. 17 | package types 18 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/go-systemd/NOTICE: -------------------------------------------------------------------------------- 1 | CoreOS Project 2 | Copyright 2018 CoreOS, Inc 3 | 4 | This product includes software developed at CoreOS, Inc. 5 | (http://www.coreos.com/). 6 | -------------------------------------------------------------------------------- /vendor/github.com/coreos/pkg/NOTICE: -------------------------------------------------------------------------------- 1 | CoreOS Project 2 | Copyright 2014 CoreOS, Inc 3 | 4 | This product includes software developed at CoreOS, Inc. 5 | (http://www.coreos.com/). 6 | -------------------------------------------------------------------------------- /vendor/github.com/fatih/camelcase/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 1.x 3 | 4 | -------------------------------------------------------------------------------- /vendor/github.com/fatih/structs/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | -------------------------------------------------------------------------------- /vendor/github.com/fatih/structs/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - 1.7.x 4 | - 1.8.x 5 | - 1.9.x 6 | - tip 7 | sudo: false 8 | before_install: 9 | - go get github.com/axw/gocov/gocov 10 | - go get github.com/mattn/goveralls 11 | - if ! go get github.com/golang/tools/cmd/cover; then go get golang.org/x/tools/cmd/cover; fi 12 | script: 13 | - $HOME/gopath/bin/goveralls -service=travis-ci 14 | -------------------------------------------------------------------------------- /vendor/github.com/gogo/protobuf/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of GoGo authors for copyright purposes. 2 | # This file is distinct from the CONTRIBUTORS file, which 3 | # lists people. For example, employees are listed in CONTRIBUTORS, 4 | # but not in AUTHORS, because the employer holds the copyright. 5 | 6 | # Names should be added to this file as one of 7 | # Organization's name 8 | # Individual's name 9 | # Individual's name 10 | 11 | # Please keep the list sorted. 12 | 13 | Sendgrid, Inc 14 | Vastech SA (PTY) LTD 15 | Walter Schulze 16 | -------------------------------------------------------------------------------- /vendor/github.com/golang/protobuf/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/github.com/golang/protobuf/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/github.com/golang/snappy/.gitignore: -------------------------------------------------------------------------------- 1 | cmd/snappytool/snappytool 2 | testdata/bench 3 | 4 | # These explicitly listed benchmark data files are for an obsolete version of 5 | # snappy_test.go. 6 | testdata/alice29.txt 7 | testdata/asyoulik.txt 8 | testdata/fireworks.jpeg 9 | testdata/geo.protodata 10 | testdata/html 11 | testdata/html_x_4 12 | testdata/kppkn.gtb 13 | testdata/lcet10.txt 14 | testdata/paper-100k.pdf 15 | testdata/plrabn12.txt 16 | testdata/urls.10K 17 | -------------------------------------------------------------------------------- /vendor/github.com/golang/snappy/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of Snappy-Go authors for copyright purposes. 2 | # This file is distinct from the CONTRIBUTORS files. 3 | # See the latter for an explanation. 4 | 5 | # Names should be added to this file as 6 | # Name or Organization 7 | # The email address is not required for organizations. 8 | 9 | # Please keep the list sorted. 10 | 11 | Damian Gryski 12 | Google Inc. 13 | Jan Mercl <0xjnml@gmail.com> 14 | Rodolfo Carvalho 15 | Sebastien Binet 16 | -------------------------------------------------------------------------------- /vendor/github.com/golang/snappy/decode_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Snappy-Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !appengine 6 | // +build gc 7 | // +build !noasm 8 | 9 | package snappy 10 | 11 | // decode has the same semantics as in decode_other.go. 12 | // 13 | //go:noescape 14 | func decode(dst, src []byte) int 15 | -------------------------------------------------------------------------------- /vendor/github.com/golang/snappy/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/golang/snappy 2 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.4.3 5 | - 1.5.3 6 | - tip 7 | 8 | script: 9 | - go test -v ./... 10 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # How to contribute 2 | 3 | We definitely welcome patches and contribution to this project! 4 | 5 | ### Legal requirements 6 | 7 | In order to protect both you and ourselves, you will need to sign the 8 | [Contributor License Agreement](https://cla.developers.google.com/clas). 9 | 10 | You may have already signed it for other Google projects. 11 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | Paul Borman 2 | bmatsuo 3 | shawnps 4 | theory 5 | jboverfelt 6 | dsymonds 7 | cd1 8 | wallclockbuilder 9 | dansouza 10 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 Google Inc. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Package uuid generates and inspects UUIDs. 6 | // 7 | // UUIDs are based on RFC 4122 and DCE 1.1: Authentication and Security 8 | // Services. 9 | // 10 | // A UUID is a 16 byte (128 bit) array. UUIDs may be used as keys to 11 | // maps or compared directly. 12 | package uuid 13 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/google/uuid 2 | -------------------------------------------------------------------------------- /vendor/github.com/google/uuid/node_js.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Google Inc. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build js 6 | 7 | package uuid 8 | 9 | // getHardwareInterface returns nil values for the JS version of the code. 10 | // This remvoves the "net" dependency, because it is not used in the browser. 11 | // Using the "net" library inflates the size of the transpiled JS code by 673k bytes. 12 | func getHardwareInterface(name string) (string, []byte) { return "", nil } 13 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | 24 | .idea/ 25 | *.iml 26 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of Gorilla WebSocket authors for copyright 2 | # purposes. 3 | # 4 | # Please keep the list sorted. 5 | 6 | Gary Burd 7 | Google LLC (https://opensource.google.com/) 8 | Joachim Bauch 9 | 10 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/client_clone.go: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Gorilla WebSocket Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build go1.8 6 | 7 | package websocket 8 | 9 | import "crypto/tls" 10 | 11 | func cloneTLSConfig(cfg *tls.Config) *tls.Config { 12 | if cfg == nil { 13 | return &tls.Config{} 14 | } 15 | return cfg.Clone() 16 | } 17 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/conn_write.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Gorilla WebSocket Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build go1.8 6 | 7 | package websocket 8 | 9 | import "net" 10 | 11 | func (c *Conn) writeBufs(bufs ...[]byte) error { 12 | b := net.Buffers(bufs) 13 | _, err := b.WriteTo(c.conn) 14 | return err 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/conn_write_legacy.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Gorilla WebSocket Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !go1.8 6 | 7 | package websocket 8 | 9 | func (c *Conn) writeBufs(bufs ...[]byte) error { 10 | for _, buf := range bufs { 11 | if len(buf) > 0 { 12 | if _, err := c.conn.Write(buf); err != nil { 13 | return err 14 | } 15 | } 16 | } 17 | return nil 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/gorilla/websocket 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/go.sum: -------------------------------------------------------------------------------- 1 | github.com/gorilla/websocket v1.4.0 h1:WDFjx/TMzVgy9VdMMQi2K2Emtwi2QcUQsztZ/zLaH/Q= 2 | github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= 3 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/mask_safe.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Gorilla WebSocket Authors. All rights reserved. Use of 2 | // this source code is governed by a BSD-style license that can be found in the 3 | // LICENSE file. 4 | 5 | // +build appengine 6 | 7 | package websocket 8 | 9 | func maskBytes(key [4]byte, pos int, b []byte) int { 10 | for i := range b { 11 | b[i] ^= key[pos&3] 12 | pos++ 13 | } 14 | return pos & 3 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/trace.go: -------------------------------------------------------------------------------- 1 | // +build go1.8 2 | 3 | package websocket 4 | 5 | import ( 6 | "crypto/tls" 7 | "net/http/httptrace" 8 | ) 9 | 10 | func doHandshakeWithTrace(trace *httptrace.ClientTrace, tlsConn *tls.Conn, cfg *tls.Config) error { 11 | if trace.TLSHandshakeStart != nil { 12 | trace.TLSHandshakeStart() 13 | } 14 | err := doHandshake(tlsConn, cfg) 15 | if trace.TLSHandshakeDone != nil { 16 | trace.TLSHandshakeDone(tlsConn.ConnectionState(), err) 17 | } 18 | return err 19 | } 20 | -------------------------------------------------------------------------------- /vendor/github.com/gorilla/websocket/trace_17.go: -------------------------------------------------------------------------------- 1 | // +build !go1.8 2 | 3 | package websocket 4 | 5 | import ( 6 | "crypto/tls" 7 | "net/http/httptrace" 8 | ) 9 | 10 | func doHandshakeWithTrace(trace *httptrace.ClientTrace, tlsConn *tls.Conn, cfg *tls.Config) error { 11 | return doHandshake(tlsConn, cfg) 12 | } 13 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/.codecov.yml: -------------------------------------------------------------------------------- 1 | ignore: 2 | - "output_tests/.*" 3 | 4 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | /bug_test.go 3 | /coverage.txt 4 | /.idea 5 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.8.x 5 | - 1.x 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | 10 | script: 11 | - ./test.sh 12 | 13 | after_success: 14 | - bash <(curl -s https://codecov.io/bash) 15 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/Gopkg.lock: -------------------------------------------------------------------------------- 1 | # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. 2 | 3 | 4 | [[projects]] 5 | name = "github.com/modern-go/concurrent" 6 | packages = ["."] 7 | revision = "e0a39a4cb4216ea8db28e22a69f4ec25610d513a" 8 | version = "1.0.0" 9 | 10 | [[projects]] 11 | name = "github.com/modern-go/reflect2" 12 | packages = ["."] 13 | revision = "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd" 14 | version = "1.0.1" 15 | 16 | [solve-meta] 17 | analyzer-name = "dep" 18 | analyzer-version = 1 19 | inputs-digest = "ea54a775e5a354cb015502d2e7aa4b74230fc77e894f34a838b268c25ec8eeb8" 20 | solver-name = "gps-cdcl" 21 | solver-version = 1 22 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | set -x 4 | 5 | if [ ! -d /tmp/build-golang/src/github.com/json-iterator ]; then 6 | mkdir -p /tmp/build-golang/src/github.com/json-iterator 7 | ln -s $PWD /tmp/build-golang/src/github.com/json-iterator/go 8 | fi 9 | export GOPATH=/tmp/build-golang 10 | go get -u github.com/golang/dep/cmd/dep 11 | cd /tmp/build-golang/src/github.com/json-iterator/go 12 | exec $GOPATH/bin/dep ensure -update 13 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/json-iterator/go 2 | 3 | go 1.12 4 | 5 | require ( 6 | github.com/davecgh/go-spew v1.1.1 7 | github.com/google/gofuzz v1.0.0 8 | github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 9 | github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742 10 | github.com/stretchr/testify v1.3.0 11 | ) 12 | -------------------------------------------------------------------------------- /vendor/github.com/json-iterator/go/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -coverprofile=profile.out -coverpkg=github.com/json-iterator/go $d 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/juju/errors/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | -------------------------------------------------------------------------------- /vendor/github.com/juju/errors/dependencies.tsv: -------------------------------------------------------------------------------- 1 | github.com/juju/loggo git 8232ab8918d91c72af1a9fb94d3edbe31d88b790 2017-06-05T01:46:07Z 2 | github.com/juju/testing git 72703b1e95eb8ce4737fd8a3d8496c6b0be280a6 2018-05-17T13:41:05Z 3 | gopkg.in/check.v1 git 4f90aeace3a26ad7021961c297b22c42160c7b25 2016-01-05T16:49:36Z 4 | gopkg.in/mgo.v2 git f2b6f6c918c452ad107eec89615f074e3bd80e33 2016-08-18T01:52:18Z 5 | gopkg.in/yaml.v2 git 1be3d31502d6eabc0dd7ce5b0daab022e14a5538 2017-07-12T05:45:46Z 6 | -------------------------------------------------------------------------------- /vendor/github.com/k0kubun/pp/wercker.yml: -------------------------------------------------------------------------------- 1 | box: golang 2 | build: 3 | steps: 4 | - setup-go-workspace 5 | 6 | - script: 7 | name: go get 8 | code: | 9 | cd $WERCKER_SOURCE_DIR 10 | go version 11 | go get -t ./... 12 | 13 | - script: 14 | name: go test 15 | code: | 16 | go test -v 17 | -------------------------------------------------------------------------------- /vendor/github.com/koding/multiconfig/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | 25 | *~ 26 | -------------------------------------------------------------------------------- /vendor/github.com/koding/multiconfig/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 1.3 3 | script: go test ./... 4 | 5 | -------------------------------------------------------------------------------- /vendor/github.com/koding/multiconfig/doc.go: -------------------------------------------------------------------------------- 1 | // Package multiconfig provides a way to load and read configurations from 2 | // multiple sources. You can read from TOML file, JSON file, YAML file, Environment 3 | // Variables and flags. You can set the order of reader with MultiLoader. Package 4 | // is extensible, you can add your custom Loader by implementing the Load interface. 5 | package multiconfig 6 | -------------------------------------------------------------------------------- /vendor/github.com/koding/multiconfig/multiloader.go: -------------------------------------------------------------------------------- 1 | package multiconfig 2 | 3 | type multiLoader []Loader 4 | 5 | // MultiLoader creates a loader that executes the loaders one by one in order 6 | // and returns on the first error. 7 | func MultiLoader(loader ...Loader) Loader { 8 | return multiLoader(loader) 9 | } 10 | 11 | // Load loads the source into the config defined by struct s 12 | func (m multiLoader) Load(s interface{}) error { 13 | for _, loader := range m { 14 | if err := loader.Load(s); err != nil { 15 | return err 16 | } 17 | } 18 | 19 | return nil 20 | } 21 | 22 | // MustLoad loads the source into the struct, it panics if gets any error 23 | func (m multiLoader) MustLoad(s interface{}) { 24 | if err := m.Load(s); err != nil { 25 | panic(err) 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /vendor/github.com/mailru/easyjson/.gitignore: -------------------------------------------------------------------------------- 1 | .root 2 | *_easyjson.go 3 | *.iml 4 | .idea 5 | *.swp 6 | bin/* 7 | -------------------------------------------------------------------------------- /vendor/github.com/mailru/easyjson/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - tip 5 | - stable 6 | 7 | matrix: 8 | allow_failures: 9 | - go: tip 10 | 11 | install: 12 | - go get golang.org/x/lint/golint 13 | -------------------------------------------------------------------------------- /vendor/github.com/mailru/easyjson/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/mailru/easyjson 2 | 3 | go 1.12 4 | -------------------------------------------------------------------------------- /vendor/github.com/mailru/easyjson/jlexer/bytestostr_nounsafe.go: -------------------------------------------------------------------------------- 1 | // This file is included to the build if any of the buildtags below 2 | // are defined. Refer to README notes for more details. 3 | 4 | //+build easyjson_nounsafe appengine 5 | 6 | package jlexer 7 | 8 | // bytesToStr creates a string normally from []byte 9 | // 10 | // Note that this method is roughly 1.5x slower than using the 'unsafe' method. 11 | func bytesToStr(data []byte) string { 12 | return string(data) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/github.com/mailru/easyjson/jlexer/error.go: -------------------------------------------------------------------------------- 1 | package jlexer 2 | 3 | import "fmt" 4 | 5 | // LexerError implements the error interface and represents all possible errors that can be 6 | // generated during parsing the JSON data. 7 | type LexerError struct { 8 | Reason string 9 | Offset int 10 | Data string 11 | } 12 | 13 | func (l *LexerError) Error() string { 14 | return fmt.Sprintf("parse error: %s near offset %d of '%s'", l.Reason, l.Offset, l.Data) 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | sudo: false 3 | go: 4 | - 1.13.x 5 | - tip 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | 10 | script: 11 | - ./go.test.sh 12 | 13 | after_success: 14 | - bash <(curl -s https://codecov.io/bash) 15 | 16 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/mattn/go-colorable 2 | 3 | require ( 4 | github.com/mattn/go-isatty v0.0.12 5 | golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae // indirect 6 | ) 7 | 8 | go 1.13 9 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/go.sum: -------------------------------------------------------------------------------- 1 | github.com/mattn/go-isatty v0.0.12 h1:wuysRhFDzyxgEmMf5xjvJ2M9dZoWAXNNr5LSBS7uHXY= 2 | github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= 3 | golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 4 | golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae h1:/WDfKMnPU+m5M4xB+6x4kaepxRw6jWvR5iDRdvjHgy8= 5 | golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 6 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-colorable/go.test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -race -coverprofile=profile.out -covermode=atomic "$d" 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | sudo: false 3 | go: 4 | - 1.13.x 5 | - tip 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | 10 | script: 11 | - ./go.test.sh 12 | 13 | after_success: 14 | - bash <(curl -s https://codecov.io/bash) 15 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/doc.go: -------------------------------------------------------------------------------- 1 | // Package isatty implements interface to isatty 2 | package isatty 3 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/go.mod: -------------------------------------------------------------------------------- 1 | module github.com/mattn/go-isatty 2 | 3 | go 1.12 4 | 5 | require golang.org/x/sys v0.0.0-20200116001909-b77594299b42 6 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/go.sum: -------------------------------------------------------------------------------- 1 | golang.org/x/sys v0.0.0-20200116001909-b77594299b42 h1:vEOn+mP2zCOVzKckCZy6YsCtDblrpj/w7B9nxGNELpg= 2 | golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 3 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/go.test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -race -coverprofile=profile.out -covermode=atomic "$d" 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_bsd.go: -------------------------------------------------------------------------------- 1 | // +build darwin freebsd openbsd netbsd dragonfly 2 | // +build !appengine 3 | 4 | package isatty 5 | 6 | import "golang.org/x/sys/unix" 7 | 8 | // IsTerminal return true if the file descriptor is terminal. 9 | func IsTerminal(fd uintptr) bool { 10 | _, err := unix.IoctlGetTermios(int(fd), unix.TIOCGETA) 11 | return err == nil 12 | } 13 | 14 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 15 | // terminal. This is also always false on this environment. 16 | func IsCygwinTerminal(fd uintptr) bool { 17 | return false 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_others.go: -------------------------------------------------------------------------------- 1 | // +build appengine js nacl 2 | 3 | package isatty 4 | 5 | // IsTerminal returns true if the file descriptor is terminal which 6 | // is always false on js and appengine classic which is a sandboxed PaaS. 7 | func IsTerminal(fd uintptr) bool { 8 | return false 9 | } 10 | 11 | // IsCygwinTerminal() return true if the file descriptor is a cygwin or msys2 12 | // terminal. This is also always false on this environment. 13 | func IsCygwinTerminal(fd uintptr) bool { 14 | return false 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_plan9.go: -------------------------------------------------------------------------------- 1 | // +build plan9 2 | 3 | package isatty 4 | 5 | import ( 6 | "syscall" 7 | ) 8 | 9 | // IsTerminal returns true if the given file descriptor is a terminal. 10 | func IsTerminal(fd uintptr) bool { 11 | path, err := syscall.Fd2path(int(fd)) 12 | if err != nil { 13 | return false 14 | } 15 | return path == "/dev/cons" || path == "/mnt/term/dev/cons" 16 | } 17 | 18 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 19 | // terminal. This is also always false on this environment. 20 | func IsCygwinTerminal(fd uintptr) bool { 21 | return false 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_solaris.go: -------------------------------------------------------------------------------- 1 | // +build solaris 2 | // +build !appengine 3 | 4 | package isatty 5 | 6 | import ( 7 | "golang.org/x/sys/unix" 8 | ) 9 | 10 | // IsTerminal returns true if the given file descriptor is a terminal. 11 | // see: http://src.illumos.org/source/xref/illumos-gate/usr/src/lib/libbc/libc/gen/common/isatty.c 12 | func IsTerminal(fd uintptr) bool { 13 | var termio unix.Termio 14 | err := unix.IoctlSetTermio(int(fd), unix.TCGETA, &termio) 15 | return err == nil 16 | } 17 | 18 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 19 | // terminal. This is also always false on this environment. 20 | func IsCygwinTerminal(fd uintptr) bool { 21 | return false 22 | } 23 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/isatty_tcgets.go: -------------------------------------------------------------------------------- 1 | // +build linux aix 2 | // +build !appengine 3 | 4 | package isatty 5 | 6 | import "golang.org/x/sys/unix" 7 | 8 | // IsTerminal return true if the file descriptor is terminal. 9 | func IsTerminal(fd uintptr) bool { 10 | _, err := unix.IoctlGetTermios(int(fd), unix.TCGETS) 11 | return err == nil 12 | } 13 | 14 | // IsCygwinTerminal return true if the file descriptor is a cygwin or msys2 15 | // terminal. This is also always false on this environment. 16 | func IsCygwinTerminal(fd uintptr) bool { 17 | return false 18 | } 19 | -------------------------------------------------------------------------------- /vendor/github.com/mattn/go-isatty/renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": [ 3 | "config:base" 4 | ], 5 | "postUpdateOptions": [ 6 | "gomodTidy" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/concurrent/.gitignore: -------------------------------------------------------------------------------- 1 | /coverage.txt 2 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/concurrent/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.8.x 5 | - 1.x 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | 10 | script: 11 | - ./test.sh 12 | 13 | after_success: 14 | - bash <(curl -s https://codecov.io/bash) 15 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/concurrent/executor.go: -------------------------------------------------------------------------------- 1 | package concurrent 2 | 3 | import "context" 4 | 5 | // Executor replace go keyword to start a new goroutine 6 | // the goroutine should cancel itself if the context passed in has been cancelled 7 | // the goroutine started by the executor, is owned by the executor 8 | // we can cancel all executors owned by the executor just by stop the executor itself 9 | // however Executor interface does not Stop method, the one starting and owning executor 10 | // should use the concrete type of executor, instead of this interface. 11 | type Executor interface { 12 | // Go starts a new goroutine controlled by the context 13 | Go(handler func(ctx context.Context)) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/concurrent/go_above_19.go: -------------------------------------------------------------------------------- 1 | //+build go1.9 2 | 3 | package concurrent 4 | 5 | import "sync" 6 | 7 | // Map is a wrapper for sync.Map introduced in go1.9 8 | type Map struct { 9 | sync.Map 10 | } 11 | 12 | // NewMap creates a thread safe Map 13 | func NewMap() *Map { 14 | return &Map{} 15 | } 16 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/concurrent/log.go: -------------------------------------------------------------------------------- 1 | package concurrent 2 | 3 | import ( 4 | "os" 5 | "log" 6 | "io/ioutil" 7 | ) 8 | 9 | // ErrorLogger is used to print out error, can be set to writer other than stderr 10 | var ErrorLogger = log.New(os.Stderr, "", 0) 11 | 12 | // InfoLogger is used to print informational message, default to off 13 | var InfoLogger = log.New(ioutil.Discard, "", 0) -------------------------------------------------------------------------------- /vendor/github.com/modern-go/concurrent/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -coverprofile=profile.out -coverpkg=github.com/modern-go/concurrent $d 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | /coverage.txt 3 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.8.x 5 | - 1.x 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | - go get -t -v github.com/modern-go/reflect2-tests/... 10 | 11 | script: 12 | - ./test.sh 13 | 14 | after_success: 15 | - bash <(curl -s https://codecov.io/bash) 16 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/Gopkg.lock: -------------------------------------------------------------------------------- 1 | # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. 2 | 3 | 4 | [[projects]] 5 | name = "github.com/modern-go/concurrent" 6 | packages = ["."] 7 | revision = "e0a39a4cb4216ea8db28e22a69f4ec25610d513a" 8 | version = "1.0.0" 9 | 10 | [solve-meta] 11 | analyzer-name = "dep" 12 | analyzer-version = 1 13 | inputs-digest = "daee8a88b3498b61c5640056665b8b9eea062006f5e596bbb6a3ed9119a11ec7" 14 | solver-name = "gps-cdcl" 15 | solver-version = 1 16 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/go_above_17.go: -------------------------------------------------------------------------------- 1 | //+build go1.7 2 | 3 | package reflect2 4 | 5 | import "unsafe" 6 | 7 | //go:linkname resolveTypeOff reflect.resolveTypeOff 8 | func resolveTypeOff(rtype unsafe.Pointer, off int32) unsafe.Pointer 9 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/go_above_19.go: -------------------------------------------------------------------------------- 1 | //+build go1.9 2 | 3 | package reflect2 4 | 5 | import ( 6 | "unsafe" 7 | ) 8 | 9 | //go:linkname makemap reflect.makemap 10 | func makemap(rtype unsafe.Pointer, cap int) (m unsafe.Pointer) 11 | 12 | func makeMapWithSize(rtype unsafe.Pointer, cap int) unsafe.Pointer { 13 | return makemap(rtype, cap) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/go_below_17.go: -------------------------------------------------------------------------------- 1 | //+build !go1.7 2 | 3 | package reflect2 4 | 5 | import "unsafe" 6 | 7 | func resolveTypeOff(rtype unsafe.Pointer, off int32) unsafe.Pointer { 8 | return nil 9 | } 10 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/go_below_19.go: -------------------------------------------------------------------------------- 1 | //+build !go1.9 2 | 3 | package reflect2 4 | 5 | import ( 6 | "unsafe" 7 | ) 8 | 9 | //go:linkname makemap reflect.makemap 10 | func makemap(rtype unsafe.Pointer) (m unsafe.Pointer) 11 | 12 | func makeMapWithSize(rtype unsafe.Pointer, cap int) unsafe.Pointer { 13 | return makemap(rtype) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/reflect2_amd64.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/reflect2_amd64.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_386.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_386.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_amd64p32.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_amd64p32.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_arm.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_arm.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_arm64.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_arm64.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_mips64x.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_mips64x.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_mipsx.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_mipsx.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_ppc64x.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_ppc64x.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/relfect2_s390x.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlexStocks/getty-examples/434fe7255b24bcc386de90e0b17f0c373f6dcae0/vendor/github.com/modern-go/reflect2/relfect2_s390x.s -------------------------------------------------------------------------------- /vendor/github.com/modern-go/reflect2/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list github.com/modern-go/reflect2-tests/... | grep -v vendor); do 7 | go test -coverprofile=profile.out -coverpkg=github.com/modern-go/reflect2 $d 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | 10 | # Architecture specific extensions/prefixes 11 | *.[568vq] 12 | [568vq].out 13 | 14 | *.cgo1.go 15 | *.cgo2.c 16 | _cgo_defun.c 17 | _cgo_gotypes.go 18 | _cgo_export.* 19 | 20 | _testmain.go 21 | 22 | *.exe 23 | *.test 24 | *.prof 25 | -------------------------------------------------------------------------------- /vendor/github.com/pkg/errors/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go_import_path: github.com/pkg/errors 3 | go: 4 | - 1.4.x 5 | - 1.5.x 6 | - 1.6.x 7 | - 1.7.x 8 | - 1.8.x 9 | - 1.9.x 10 | - 1.10.x 11 | - 1.11.x 12 | - tip 13 | 14 | script: 15 | - go test -v ./... 16 | -------------------------------------------------------------------------------- /vendor/go.etcd.io/etcd/NOTICE: -------------------------------------------------------------------------------- 1 | CoreOS Project 2 | Copyright 2014 CoreOS, Inc 3 | 4 | This product includes software developed at CoreOS, Inc. 5 | (http://www.coreos.com/). 6 | -------------------------------------------------------------------------------- /vendor/go.uber.org/atomic/.gitignore: -------------------------------------------------------------------------------- 1 | /bin 2 | .DS_Store 3 | /vendor 4 | cover.html 5 | cover.out 6 | lint.log 7 | 8 | # Binaries 9 | *.test 10 | 11 | # Profiling output 12 | *.prof 13 | -------------------------------------------------------------------------------- /vendor/go.uber.org/atomic/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: go 3 | go_import_path: go.uber.org/atomic 4 | 5 | env: 6 | global: 7 | - GO111MODULE=on 8 | 9 | matrix: 10 | include: 11 | - go: 1.12.x 12 | - go: 1.13.x 13 | env: LINT=1 14 | 15 | cache: 16 | directories: 17 | - vendor 18 | 19 | before_install: 20 | - go version 21 | 22 | script: 23 | - test -z "$LINT" || make lint 24 | - make cover 25 | 26 | after_success: 27 | - bash <(curl -s https://codecov.io/bash) 28 | -------------------------------------------------------------------------------- /vendor/go.uber.org/atomic/go.mod: -------------------------------------------------------------------------------- 1 | module go.uber.org/atomic 2 | 3 | require ( 4 | github.com/davecgh/go-spew v1.1.1 // indirect 5 | github.com/stretchr/testify v1.3.0 6 | golang.org/x/lint v0.0.0-20190930215403-16217165b5de 7 | golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c // indirect 8 | ) 9 | 10 | go 1.13 11 | -------------------------------------------------------------------------------- /vendor/go.uber.org/multierr/.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | cover.html 3 | cover.out 4 | /bin 5 | -------------------------------------------------------------------------------- /vendor/go.uber.org/multierr/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: go 3 | go_import_path: go.uber.org/multierr 4 | 5 | env: 6 | global: 7 | - GO15VENDOREXPERIMENT=1 8 | - GO111MODULE=on 9 | 10 | go: 11 | - 1.11.x 12 | - 1.12.x 13 | - 1.13.x 14 | 15 | cache: 16 | directories: 17 | - vendor 18 | 19 | before_install: 20 | - go version 21 | 22 | script: 23 | - | 24 | set -e 25 | make lint 26 | make cover 27 | 28 | after_success: 29 | - bash <(curl -s https://codecov.io/bash) 30 | -------------------------------------------------------------------------------- /vendor/go.uber.org/multierr/glide.yaml: -------------------------------------------------------------------------------- 1 | package: go.uber.org/multierr 2 | import: 3 | - package: go.uber.org/atomic 4 | version: ^1 5 | testImport: 6 | - package: github.com/stretchr/testify 7 | subpackages: 8 | - assert 9 | -------------------------------------------------------------------------------- /vendor/go.uber.org/multierr/go.mod: -------------------------------------------------------------------------------- 1 | module go.uber.org/multierr 2 | 3 | go 1.12 4 | 5 | require ( 6 | github.com/stretchr/testify v1.3.0 7 | go.uber.org/atomic v1.5.0 8 | go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee 9 | golang.org/x/lint v0.0.0-20190930215403-16217165b5de 10 | golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5 // indirect 11 | honnef.co/go/tools v0.0.1-2019.2.3 12 | ) 13 | -------------------------------------------------------------------------------- /vendor/go.uber.org/tools/update-license/.gitignore: -------------------------------------------------------------------------------- 1 | update-license 2 | -------------------------------------------------------------------------------- /vendor/go.uber.org/zap/.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 2 | *.o 3 | *.a 4 | *.so 5 | 6 | # Folders 7 | _obj 8 | _test 9 | vendor 10 | 11 | # Architecture specific extensions/prefixes 12 | *.[568vq] 13 | [568vq].out 14 | 15 | *.cgo1.go 16 | *.cgo2.c 17 | _cgo_defun.c 18 | _cgo_gotypes.go 19 | _cgo_export.* 20 | 21 | _testmain.go 22 | 23 | *.exe 24 | *.test 25 | *.prof 26 | *.pprof 27 | *.out 28 | *.log 29 | 30 | /bin 31 | cover.out 32 | cover.html 33 | -------------------------------------------------------------------------------- /vendor/go.uber.org/zap/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | sudo: false 3 | 4 | go_import_path: go.uber.org/zap 5 | env: 6 | global: 7 | - TEST_TIMEOUT_SCALE=10 8 | - GO111MODULE=on 9 | 10 | matrix: 11 | include: 12 | - go: 1.12.x 13 | - go: 1.13.x 14 | env: LINT=1 15 | 16 | script: 17 | - test -z "$LINT" || make lint 18 | - make test 19 | - make bench 20 | 21 | after_success: 22 | - make cover 23 | - bash <(curl -s https://codecov.io/bash) 24 | -------------------------------------------------------------------------------- /vendor/go.uber.org/zap/checklicense.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash -e 2 | 3 | ERROR_COUNT=0 4 | while read -r file 5 | do 6 | case "$(head -1 "${file}")" in 7 | *"Copyright (c) "*" Uber Technologies, Inc.") 8 | # everything's cool 9 | ;; 10 | *) 11 | echo "$file is missing license header." 12 | (( ERROR_COUNT++ )) 13 | ;; 14 | esac 15 | done < <(git ls-files "*\.go") 16 | 17 | exit $ERROR_COUNT 18 | -------------------------------------------------------------------------------- /vendor/go.uber.org/zap/go.mod: -------------------------------------------------------------------------------- 1 | module go.uber.org/zap 2 | 3 | go 1.13 4 | 5 | require ( 6 | github.com/pkg/errors v0.8.1 7 | github.com/stretchr/testify v1.4.0 8 | go.uber.org/atomic v1.5.0 9 | go.uber.org/multierr v1.3.0 10 | golang.org/x/lint v0.0.0-20190930215403-16217165b5de 11 | ) 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/lint/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: go 3 | go: 4 | - 1.10.x 5 | - 1.11.x 6 | - master 7 | 8 | go_import_path: golang.org/x/lint 9 | 10 | install: 11 | - go get -t -v ./... 12 | 13 | script: 14 | - go test -v -race ./... 15 | 16 | matrix: 17 | allow_failures: 18 | - go: master 19 | fast_finish: true 20 | -------------------------------------------------------------------------------- /vendor/golang.org/x/lint/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to Golint 2 | 3 | ## Before filing an issue: 4 | 5 | ### Are you having trouble building golint? 6 | 7 | Check you have the latest version of its dependencies. Run 8 | ``` 9 | go get -u golang.org/x/lint/golint 10 | ``` 11 | If you still have problems, consider searching for existing issues before filing a new issue. 12 | 13 | ## Before sending a pull request: 14 | 15 | Have you understood the purpose of golint? Make sure to carefully read `README`. 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/lint/go.mod: -------------------------------------------------------------------------------- 1 | module golang.org/x/lint 2 | 3 | require golang.org/x/tools v0.0.0-20190311212946-11955173bddd 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/lint/go.sum: -------------------------------------------------------------------------------- 1 | golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= 2 | golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 3 | golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= 4 | golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= 5 | golang.org/x/tools v0.0.0-20190311212946-11955173bddd h1:/e+gpKk9r3dJobndpTytxS2gOy6m5uvpg+ISQoEcusQ= 6 | golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= 7 | -------------------------------------------------------------------------------- /vendor/golang.org/x/lint/golint/importcomment.go: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2018 The Go Authors. All rights reserved. 2 | // 3 | // Use of this source code is governed by a BSD-style 4 | // license that can be found in the LICENSE file or at 5 | // https://developers.google.com/open-source/licenses/bsd. 6 | 7 | // +build go1.12 8 | 9 | // Require use of the correct import path only for Go 1.12+ users, so 10 | // any breakages coincide with people updating their CI configs or 11 | // whatnot. 12 | 13 | package main // import "golang.org/x/lint/golint" 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | h2i/h2i 3 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/Makefile: -------------------------------------------------------------------------------- 1 | curlimage: 2 | docker build -t gohttp2/curl . 3 | 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/README: -------------------------------------------------------------------------------- 1 | This is a work-in-progress HTTP/2 implementation for Go. 2 | 3 | It will eventually live in the Go standard library and won't require 4 | any changes to your code to use. It will just be automatic. 5 | 6 | Status: 7 | 8 | * The server support is pretty good. A few things are missing 9 | but are being worked on. 10 | * The client work has just started but shares a lot of code 11 | is coming along much quicker. 12 | 13 | Docs are at https://godoc.org/golang.org/x/net/http2 14 | 15 | Demo test server at https://http2.golang.org/ 16 | 17 | Help & bug reports welcome! 18 | 19 | Contributing: https://golang.org/doc/contribute.html 20 | Bugs: https://golang.org/issue/new?title=x/net/http2:+ 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/net/http2/not_go111.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !go1.11 6 | 7 | package http2 8 | 9 | import ( 10 | "net/http/httptrace" 11 | "net/textproto" 12 | ) 13 | 14 | func traceHasWroteHeaderField(trace *httptrace.ClientTrace) bool { return false } 15 | 16 | func traceWroteHeaderField(trace *httptrace.ClientTrace, k, v string) {} 17 | 18 | func traceGot1xxResponseFunc(trace *httptrace.ClientTrace) func(int, textproto.MIMEHeader) error { 19 | return nil 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/.gitignore: -------------------------------------------------------------------------------- 1 | _obj/ 2 | unix.test 3 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/aliases.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris 6 | // +build go1.9 7 | 8 | package unix 9 | 10 | import "syscall" 11 | 12 | type Signal = syscall.Signal 13 | type Errno = syscall.Errno 14 | type SysProcAttr = syscall.SysProcAttr 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_aix_ppc64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for ppc64, AIX are implemented in runtime/syscall_aix.go 11 | // 12 | 13 | TEXT ·syscall6(SB),NOSPLIT,$0-88 14 | JMP syscall·syscall6(SB) 15 | 16 | TEXT ·rawSyscall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSyscall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/asm_solaris_amd64.s: -------------------------------------------------------------------------------- 1 | // Copyright 2014 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !gccgo 6 | 7 | #include "textflag.h" 8 | 9 | // 10 | // System calls for amd64, Solaris are implemented in runtime/syscall_solaris.go 11 | // 12 | 13 | TEXT ·sysvicall6(SB),NOSPLIT,$0-88 14 | JMP syscall·sysvicall6(SB) 15 | 16 | TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88 17 | JMP syscall·rawSysvicall6(SB) 18 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/constants.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package unix 8 | 9 | const ( 10 | R_OK = 0x4 11 | W_OK = 0x2 12 | X_OK = 0x1 13 | ) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/endian_big.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | // 5 | // +build ppc64 s390x mips mips64 6 | 7 | package unix 8 | 9 | const isBigEndian = true 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/endian_little.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | // 5 | // +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le riscv64 6 | 7 | package unix 8 | 9 | const isBigEndian = false 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/env_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2010 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | // Unix environment variables. 8 | 9 | package unix 10 | 11 | import "syscall" 12 | 13 | func Getenv(key string) (value string, found bool) { 14 | return syscall.Getenv(key) 15 | } 16 | 17 | func Setenv(key, value string) error { 18 | return syscall.Setenv(key, value) 19 | } 20 | 21 | func Clearenv() { 22 | syscall.Clearenv() 23 | } 24 | 25 | func Environ() []string { 26 | return syscall.Environ() 27 | } 28 | 29 | func Unsetenv(key string) error { 30 | return syscall.Unsetenv(key) 31 | } 32 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl_darwin.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package unix 6 | 7 | import "unsafe" 8 | 9 | // FcntlInt performs a fcntl syscall on fd with the provided command and argument. 10 | func FcntlInt(fd uintptr, cmd, arg int) (int, error) { 11 | return fcntl(int(fd), cmd, arg) 12 | } 13 | 14 | // FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command. 15 | func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error { 16 | _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk)))) 17 | return err 18 | } 19 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go: -------------------------------------------------------------------------------- 1 | // +build linux,386 linux,arm linux,mips linux,mipsle 2 | 3 | // Copyright 2014 The Go Authors. All rights reserved. 4 | // Use of this source code is governed by a BSD-style 5 | // license that can be found in the LICENSE file. 6 | 7 | package unix 8 | 9 | func init() { 10 | // On 32-bit Linux systems, the fcntl syscall that matches Go's 11 | // Flock_t type is SYS_FCNTL64, not SYS_FCNTL. 12 | fcntl64Syscall = SYS_FCNTL64 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build gccgo,linux,amd64 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | //extern gettimeofday 12 | func realGettimeofday(*Timeval, *byte) int32 13 | 14 | func gettimeofday(tv *Timeval) (err syscall.Errno) { 15 | r := realGettimeofday(tv, nil) 16 | if r < 0 { 17 | return syscall.GetErrno() 18 | } 19 | return 0 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/pagesize_unix.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | // For Unix, get the pagesize from the runtime. 8 | 9 | package unix 10 | 11 | import "syscall" 12 | 13 | func Getpagesize() int { 14 | return syscall.Getpagesize() 15 | } 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/race.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin,race linux,race freebsd,race 6 | 7 | package unix 8 | 9 | import ( 10 | "runtime" 11 | "unsafe" 12 | ) 13 | 14 | const raceenabled = true 15 | 16 | func raceAcquire(addr unsafe.Pointer) { 17 | runtime.RaceAcquire(addr) 18 | } 19 | 20 | func raceReleaseMerge(addr unsafe.Pointer) { 21 | runtime.RaceReleaseMerge(addr) 22 | } 23 | 24 | func raceReadRange(addr unsafe.Pointer, len int) { 25 | runtime.RaceReadRange(addr, len) 26 | } 27 | 28 | func raceWriteRange(addr unsafe.Pointer, len int) { 29 | runtime.RaceWriteRange(addr, len) 30 | } 31 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/race0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly 6 | 7 | package unix 8 | 9 | import ( 10 | "unsafe" 11 | ) 12 | 13 | const raceenabled = false 14 | 15 | func raceAcquire(addr unsafe.Pointer) { 16 | } 17 | 18 | func raceReleaseMerge(addr unsafe.Pointer) { 19 | } 20 | 21 | func raceReadRange(addr unsafe.Pointer, len int) { 22 | } 23 | 24 | func raceWriteRange(addr unsafe.Pointer, len int) { 25 | } 26 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/readdirent_getdents.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix dragonfly freebsd linux netbsd openbsd 6 | 7 | package unix 8 | 9 | // ReadDirent reads directory entries from fd and writes them into buf. 10 | func ReadDirent(fd int, buf []byte) (n int, err error) { 11 | return Getdents(fd, buf) 12 | } 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package unix 6 | 7 | // Round the length of a raw sockaddr up to align it properly. 8 | func cmsgAlignOf(salen int) int { 9 | salign := SizeofPtr 10 | if SizeofPtr == 8 && !supportsABI(_dragonflyABIChangeVersion) { 11 | // 64-bit Dragonfly before the September 2019 ABI changes still requires 12 | // 32-bit aligned access to network subsystem. 13 | salign = 4 14 | } 15 | return (salen + salign - 1) & ^(salign - 1) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/str.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris 6 | 7 | package unix 8 | 9 | func itoa(val int) string { // do it here rather than with fmt to avoid dependency 10 | if val < 0 { 11 | return "-" + uitoa(uint(-val)) 12 | } 13 | return uitoa(uint(val)) 14 | } 15 | 16 | func uitoa(val uint) string { 17 | var buf [32]byte // big enough for int64 18 | i := len(buf) - 1 19 | for val >= 10 { 20 | buf[i] = byte(val%10 + '0') 21 | i-- 22 | val /= 10 23 | } 24 | buf[i] = byte(val + '0') 25 | return string(buf[i:]) 26 | } 27 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin,386,!go1.12 6 | 7 | package unix 8 | 9 | //sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin,amd64,!go1.12 6 | 7 | package unix 8 | 9 | //sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64 10 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin,arm,!go1.12 6 | 7 | package unix 8 | 9 | func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { 10 | return 0, ENOSYS 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin,arm64,!go1.12 6 | 7 | package unix 8 | 9 | func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { 10 | return 0, ENOSYS 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build amd64,linux 6 | // +build !gccgo 7 | 8 | package unix 9 | 10 | import "syscall" 11 | 12 | //go:noescape 13 | func gettimeofday(tv *Timeval) (err syscall.Errno) 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build linux,!gccgo 6 | 7 | package unix 8 | 9 | // SyscallNoError may be used instead of Syscall for syscalls that don't fail. 10 | func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) 11 | 12 | // RawSyscallNoError may be used instead of RawSyscall for syscalls that don't 13 | // fail. 14 | func RawSyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build linux,!gccgo,386 6 | 7 | package unix 8 | 9 | import "syscall" 10 | 11 | // Underlying system call writes to newoffset via pointer. 12 | // Implemented in assembly to avoid allocation. 13 | func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) 14 | 15 | func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno) 16 | func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (n int, err syscall.Errno) 17 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build linux,gccgo,arm 6 | 7 | package unix 8 | 9 | import ( 10 | "syscall" 11 | "unsafe" 12 | ) 13 | 14 | func seek(fd int, offset int64, whence int) (int64, syscall.Errno) { 15 | var newoffset int64 16 | offsetLow := uint32(offset & 0xffffffff) 17 | offsetHigh := uint32((offset >> 32) & 0xffffffff) 18 | _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) 19 | return newoffset, err 20 | } 21 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build amd64,solaris 6 | 7 | package unix 8 | 9 | func setTimespec(sec, nsec int64) Timespec { 10 | return Timespec{Sec: sec, Nsec: nsec} 11 | } 12 | 13 | func setTimeval(sec, usec int64) Timeval { 14 | return Timeval{Sec: sec, Usec: usec} 15 | } 16 | 17 | func (iov *Iovec) SetLen(length int) { 18 | iov.Len = uint64(length) 19 | } 20 | 21 | func (msghdr *Msghdr) SetIovlen(length int) { 22 | msghdr.Iovlen = int32(length) 23 | } 24 | 25 | func (cmsg *Cmsghdr) SetLen(length int) { 26 | cmsg.Len = uint32(length) 27 | } 28 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/syscall_unix_gc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin dragonfly freebsd linux netbsd openbsd solaris 6 | // +build !gccgo,!ppc64le,!ppc64 7 | 8 | package unix 9 | 10 | import "syscall" 11 | 12 | func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 13 | func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 14 | func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) 15 | func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) 16 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s: -------------------------------------------------------------------------------- 1 | // go run mkasm_darwin.go 386 2 | // Code generated by the command above; DO NOT EDIT. 3 | 4 | // +build go1.13 5 | 6 | #include "textflag.h" 7 | TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 8 | JMP libc_fdopendir(SB) 9 | TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 10 | JMP libc_closedir(SB) 11 | TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 12 | JMP libc_readdir_r(SB) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s: -------------------------------------------------------------------------------- 1 | // go run mkasm_darwin.go amd64 2 | // Code generated by the command above; DO NOT EDIT. 3 | 4 | // +build go1.13 5 | 6 | #include "textflag.h" 7 | TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 8 | JMP libc_fdopendir(SB) 9 | TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 10 | JMP libc_closedir(SB) 11 | TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 12 | JMP libc_readdir_r(SB) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s: -------------------------------------------------------------------------------- 1 | // go run mkasm_darwin.go arm 2 | // Code generated by the command above; DO NOT EDIT. 3 | 4 | // +build go1.13 5 | 6 | #include "textflag.h" 7 | TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 8 | JMP libc_fdopendir(SB) 9 | TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 10 | JMP libc_closedir(SB) 11 | TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 12 | JMP libc_readdir_r(SB) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s: -------------------------------------------------------------------------------- 1 | // go run mkasm_darwin.go arm64 2 | // Code generated by the command above; DO NOT EDIT. 3 | 4 | // +build go1.13 5 | 6 | #include "textflag.h" 7 | TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 8 | JMP libc_fdopendir(SB) 9 | TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 10 | JMP libc_closedir(SB) 11 | TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 12 | JMP libc_readdir_r(SB) 13 | -------------------------------------------------------------------------------- /vendor/golang.org/x/text/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/text/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build go1.10 6 | 7 | package bidirule 8 | 9 | func (t *Transformer) isFinal() bool { 10 | return t.state == ruleLTRFinal || t.state == ruleRTLFinal || t.state == ruleInitial 11 | } 12 | -------------------------------------------------------------------------------- /vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !go1.10 6 | 7 | package bidirule 8 | 9 | func (t *Transformer) isFinal() bool { 10 | if !t.isRTL() { 11 | return true 12 | } 13 | return t.state == ruleLTRFinal || t.state == ruleRTLFinal || t.state == ruleInitial 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/go/ast/astutil/util.go: -------------------------------------------------------------------------------- 1 | package astutil 2 | 3 | import "go/ast" 4 | 5 | // Unparen returns e with any enclosing parentheses stripped. 6 | func Unparen(e ast.Expr) ast.Expr { 7 | for { 8 | p, ok := e.(*ast.ParenExpr) 9 | if !ok { 10 | return e 11 | } 12 | e = p.X 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/go/internal/gcimporter/newInterface10.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build !go1.11 6 | 7 | package gcimporter 8 | 9 | import "go/types" 10 | 11 | func newInterface(methods []*types.Func, embeddeds []types.Type) *types.Interface { 12 | named := make([]*types.Named, len(embeddeds)) 13 | for i, e := range embeddeds { 14 | var ok bool 15 | named[i], ok = e.(*types.Named) 16 | if !ok { 17 | panic("embedding of non-defined interfaces in interfaces is not supported before Go 1.11") 18 | } 19 | } 20 | return types.NewInterface(methods, named) 21 | } 22 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/go/internal/gcimporter/newInterface11.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build go1.11 6 | 7 | package gcimporter 8 | 9 | import "go/types" 10 | 11 | func newInterface(methods []*types.Func, embeddeds []types.Type) *types.Interface { 12 | return types.NewInterfaceType(methods, embeddeds) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_fileno.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build freebsd openbsd netbsd 6 | 7 | package fastwalk 8 | 9 | import "syscall" 10 | 11 | func direntInode(dirent *syscall.Dirent) uint64 { 12 | return uint64(dirent.Fileno) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_ino.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build linux darwin 6 | // +build !appengine 7 | 8 | package fastwalk 9 | 10 | import "syscall" 11 | 12 | func direntInode(dirent *syscall.Dirent) uint64 { 13 | return uint64(dirent.Ino) 14 | } 15 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/fastwalk/fastwalk_dirent_namlen_bsd.go: -------------------------------------------------------------------------------- 1 | // Copyright 2018 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build darwin freebsd openbsd netbsd 6 | 7 | package fastwalk 8 | 9 | import "syscall" 10 | 11 | func direntNamlen(dirent *syscall.Dirent) uint64 { 12 | return uint64(dirent.Namlen) 13 | } 14 | -------------------------------------------------------------------------------- /vendor/golang.org/x/tools/internal/span/token112.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build go1.12 6 | 7 | package span 8 | 9 | import ( 10 | "go/token" 11 | ) 12 | 13 | // TODO(rstambler): Delete this file when we no longer support Go 1.11. 14 | func lineStart(f *token.File, line int) token.Pos { 15 | return f.LineStart(line) 16 | } 17 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/AUTHORS: -------------------------------------------------------------------------------- 1 | Google Inc. 2 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/CODE-OF-CONDUCT.md: -------------------------------------------------------------------------------- 1 | ## Community Code of Conduct 2 | 3 | gRPC follows the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). 4 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/GOVERNANCE.md: -------------------------------------------------------------------------------- 1 | This repository is governed by the gRPC organization's [governance rules](https://github.com/grpc/grpc-community/blob/master/governance.md). 2 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/codegen.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # This script serves as an example to demonstrate how to generate the gRPC-Go 4 | # interface and the related messages from .proto file. 5 | # 6 | # It assumes the installation of i) Google proto buffer compiler at 7 | # https://github.com/google/protobuf (after v2.6.1) and ii) the Go codegen 8 | # plugin at https://github.com/golang/protobuf (after 2015-02-20). If you have 9 | # not, please install them first. 10 | # 11 | # We recommend running this script at $GOPATH/src. 12 | # 13 | # If this is not what you need, feel free to make your own scripts. Again, this 14 | # script is for demonstration purpose. 15 | # 16 | proto=$1 17 | protoc --go_out=plugins=grpc:. $proto 18 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/go.mod: -------------------------------------------------------------------------------- 1 | module google.golang.org/grpc 2 | 3 | go 1.11 4 | 5 | require ( 6 | github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473 7 | github.com/envoyproxy/protoc-gen-validate v0.1.0 8 | github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b 9 | github.com/golang/mock v1.1.1 10 | github.com/golang/protobuf v1.3.2 11 | github.com/google/go-cmp v0.2.0 12 | golang.org/x/net v0.0.0-20190311183353-d8887717615a 13 | golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be 14 | golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a 15 | google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 16 | ) 17 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/install_gae.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | TMP=$(mktemp -d /tmp/sdk.XXX) \ 4 | && curl -o $TMP.zip "https://storage.googleapis.com/appengine-sdks/featured/go_appengine_sdk_linux_amd64-1.9.68.zip" \ 5 | && unzip -q $TMP.zip -d $TMP \ 6 | && export PATH="$PATH:$TMP/go_appengine" 7 | -------------------------------------------------------------------------------- /vendor/google.golang.org/grpc/version.go: -------------------------------------------------------------------------------- 1 | /* 2 | * 3 | * Copyright 2018 gRPC authors. 4 | * 5 | * Licensed under the Apache License, Version 2.0 (the "License"); 6 | * you may not use this file except in compliance with the License. 7 | * 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, software 12 | * distributed under the License is distributed on an "AS IS" BASIS, 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | * See the License for the specific language governing permissions and 15 | * limitations under the License. 16 | * 17 | */ 18 | 19 | package grpc 20 | 21 | // Version is the current grpc version. 22 | const Version = "1.26.0" 23 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - "1.4.x" 5 | - "1.5.x" 6 | - "1.6.x" 7 | - "1.7.x" 8 | - "1.8.x" 9 | - "1.9.x" 10 | - "1.10.x" 11 | - "1.11.x" 12 | - "1.12.x" 13 | - "1.13.x" 14 | - "tip" 15 | 16 | go_import_path: gopkg.in/yaml.v2 17 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Canonical Ltd. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/go.mod: -------------------------------------------------------------------------------- 1 | module "gopkg.in/yaml.v2" 2 | 3 | require ( 4 | "gopkg.in/check.v1" v0.0.0-20161208181325-20d25e280405 5 | ) 6 | -------------------------------------------------------------------------------- /vendor/gopkg.in/yaml.v2/writerc.go: -------------------------------------------------------------------------------- 1 | package yaml 2 | 3 | // Set the writer error and return false. 4 | func yaml_emitter_set_writer_error(emitter *yaml_emitter_t, problem string) bool { 5 | emitter.error = yaml_WRITER_ERROR 6 | emitter.problem = problem 7 | return false 8 | } 9 | 10 | // Flush the output buffer. 11 | func yaml_emitter_flush(emitter *yaml_emitter_t) bool { 12 | if emitter.write_handler == nil { 13 | panic("write handler not set") 14 | } 15 | 16 | // Check if the buffer is empty. 17 | if emitter.buffer_pos == 0 { 18 | return true 19 | } 20 | 21 | if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil { 22 | return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error()) 23 | } 24 | emitter.buffer_pos = 0 25 | return true 26 | } 27 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/cmd/staticcheck/README.md: -------------------------------------------------------------------------------- 1 | # staticcheck 2 | 3 | _staticcheck_ offers extensive analysis of Go code, covering a myriad 4 | of categories. It will detect bugs, suggest code simplifications, 5 | point out dead code, and more. 6 | 7 | ## Installation 8 | 9 | See [the main README](https://github.com/dominikh/go-tools#installation) for installation instructions. 10 | 11 | ## Documentation 12 | 13 | Detailed documentation can be found on 14 | [staticcheck.io](https://staticcheck.io/docs/). 15 | 16 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/config/example.conf: -------------------------------------------------------------------------------- 1 | checks = ["all", "-ST1003", "-ST1014"] 2 | initialisms = ["ACL", "API", "ASCII", "CPU", "CSS", "DNS", 3 | "EOF", "GUID", "HTML", "HTTP", "HTTPS", "ID", 4 | "IP", "JSON", "QPS", "RAM", "RPC", "SLA", 5 | "SMTP", "SQL", "SSH", "TCP", "TLS", "TTL", 6 | "UDP", "UI", "GID", "UID", "UUID", "URI", 7 | "URL", "UTF8", "VM", "XML", "XMPP", "XSRF", 8 | "XSS", "SIP", "RTP"] 9 | dot_import_whitelist = [] 10 | http_status_code_whitelist = ["200", "400", "404", "500"] 11 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/facts/token.go: -------------------------------------------------------------------------------- 1 | package facts 2 | 3 | import ( 4 | "go/ast" 5 | "go/token" 6 | "reflect" 7 | 8 | "golang.org/x/tools/go/analysis" 9 | ) 10 | 11 | var TokenFile = &analysis.Analyzer{ 12 | Name: "tokenfileanalyzer", 13 | Doc: "creates a mapping of *token.File to *ast.File", 14 | Run: func(pass *analysis.Pass) (interface{}, error) { 15 | m := map[*token.File]*ast.File{} 16 | for _, af := range pass.Files { 17 | tf := pass.Fset.File(af.Pos()) 18 | m[tf] = af 19 | } 20 | return m, nil 21 | }, 22 | RunDespiteErrors: true, 23 | ResultType: reflect.TypeOf(map[*token.File]*ast.File{}), 24 | } 25 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/functions/terminates.go: -------------------------------------------------------------------------------- 1 | package functions 2 | 3 | import "honnef.co/go/tools/ssa" 4 | 5 | // Terminates reports whether fn is supposed to return, that is if it 6 | // has at least one theoretic path that returns from the function. 7 | // Explicit panics do not count as terminating. 8 | func Terminates(fn *ssa.Function) bool { 9 | if fn.Blocks == nil { 10 | // assuming that a function terminates is the conservative 11 | // choice 12 | return true 13 | } 14 | 15 | for _, block := range fn.Blocks { 16 | if len(block.Instrs) == 0 { 17 | continue 18 | } 19 | if _, ok := block.Instrs[len(block.Instrs)-1].(*ssa.Return); ok { 20 | return true 21 | } 22 | } 23 | return false 24 | } 25 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/lint/lintutil/stats.go: -------------------------------------------------------------------------------- 1 | // +build !aix,!android,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris 2 | 3 | package lintutil 4 | 5 | import "os" 6 | 7 | var infoSignals = []os.Signal{} 8 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/lint/lintutil/stats_bsd.go: -------------------------------------------------------------------------------- 1 | // +build darwin dragonfly freebsd netbsd openbsd 2 | 3 | package lintutil 4 | 5 | import ( 6 | "os" 7 | "syscall" 8 | ) 9 | 10 | var infoSignals = []os.Signal{syscall.SIGINFO} 11 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/lint/lintutil/stats_posix.go: -------------------------------------------------------------------------------- 1 | // +build aix android linux solaris 2 | 3 | package lintutil 4 | 5 | import ( 6 | "os" 7 | "syscall" 8 | ) 9 | 10 | var infoSignals = []os.Signal{syscall.SIGUSR1} 11 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/lint/stats.go: -------------------------------------------------------------------------------- 1 | package lint 2 | 3 | const ( 4 | StateInitializing = 0 5 | StateGraph = 1 6 | StateProcessing = 2 7 | StateCumulative = 3 8 | ) 9 | 10 | type Stats struct { 11 | State uint32 12 | 13 | InitialPackages uint32 14 | TotalPackages uint32 15 | ProcessedPackages uint32 16 | ProcessedInitialPackages uint32 17 | Problems uint32 18 | ActiveWorkers uint32 19 | TotalWorkers uint32 20 | } 21 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/printf/fuzz.go: -------------------------------------------------------------------------------- 1 | // +build gofuzz 2 | 3 | package printf 4 | 5 | func Fuzz(data []byte) int { 6 | _, err := Parse(string(data)) 7 | if err == nil { 8 | return 1 9 | } 10 | return 0 11 | } 12 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/simple/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to gosimple 2 | 3 | ## Before filing an issue: 4 | 5 | ### Are you having trouble building gosimple? 6 | 7 | Check you have the latest version of its dependencies. Run 8 | ``` 9 | go get -u honnef.co/go/tools/simple 10 | ``` 11 | If you still have problems, consider searching for existing issues before filing a new issue. 12 | 13 | ## Before sending a pull request: 14 | 15 | Have you understood the purpose of gosimple? Make sure to carefully read `README`. 16 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/ssa/identical.go: -------------------------------------------------------------------------------- 1 | // +build go1.8 2 | 3 | package ssa 4 | 5 | import "go/types" 6 | 7 | var structTypesIdentical = types.IdenticalIgnoreTags 8 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/ssa/identical_17.go: -------------------------------------------------------------------------------- 1 | // +build !go1.8 2 | 3 | package ssa 4 | 5 | import "go/types" 6 | 7 | var structTypesIdentical = types.Identical 8 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/ssa/staticcheck.conf: -------------------------------------------------------------------------------- 1 | # ssa/... is mostly imported from upstream and we don't want to 2 | # deviate from it too much, hence disabling SA1019 3 | checks = ["inherit", "-SA1019"] 4 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/ssa/write.go: -------------------------------------------------------------------------------- 1 | package ssa 2 | 3 | func NewJump(parent *BasicBlock) *Jump { 4 | return &Jump{anInstruction{parent}} 5 | } 6 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/staticcheck/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to staticcheck 2 | 3 | ## Before filing an issue: 4 | 5 | ### Are you having trouble building staticcheck? 6 | 7 | Check you have the latest version of its dependencies. Run 8 | ``` 9 | go get -u honnef.co/go/tools/staticcheck 10 | ``` 11 | If you still have problems, consider searching for existing issues before filing a new issue. 12 | 13 | ## Before sending a pull request: 14 | 15 | Have you understood the purpose of staticcheck? Make sure to carefully read `README`. 16 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/staticcheck/buildtag.go: -------------------------------------------------------------------------------- 1 | package staticcheck 2 | 3 | import ( 4 | "go/ast" 5 | "strings" 6 | 7 | . "honnef.co/go/tools/lint/lintdsl" 8 | ) 9 | 10 | func buildTags(f *ast.File) [][]string { 11 | var out [][]string 12 | for _, line := range strings.Split(Preamble(f), "\n") { 13 | if !strings.HasPrefix(line, "+build ") { 14 | continue 15 | } 16 | line = strings.TrimSpace(strings.TrimPrefix(line, "+build ")) 17 | fields := strings.Fields(line) 18 | out = append(out, fields) 19 | } 20 | return out 21 | } 22 | -------------------------------------------------------------------------------- /vendor/honnef.co/go/tools/version/buildinfo111.go: -------------------------------------------------------------------------------- 1 | // +build !go1.12 2 | 3 | package version 4 | 5 | func printBuildInfo() {} 6 | func buildInfoVersion() (string, bool) { return "", false } 7 | --------------------------------------------------------------------------------