diff options
| author | ruki <[email protected]> | 2022-04-05 22:43:13 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2022-04-05 22:43:13 +0800 |
| commit | 850656df9fd322bb91d62be0e5d64d8f219559f8 (patch) | |
| tree | af59e5c9cd45676b249a94284c0de0cb5ff32649 /xmake/plugins/service/server.lua | |
| parent | fc1eda282369071bd5d81963a01b618ff13ea48e (diff) | |
move service to private modules
Diffstat (limited to 'xmake/plugins/service/server.lua')
| -rw-r--r-- | xmake/plugins/service/server.lua | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/xmake/plugins/service/server.lua b/xmake/plugins/service/server.lua deleted file mode 100644 index e2ccbbd86..000000000 --- a/xmake/plugins/service/server.lua +++ /dev/null @@ -1,78 +0,0 @@ ---!A cross-platform build utility based on Lua --- --- Licensed under the Apache License, Version 2.0 (the "License"); --- you may not use this file except in compliance with the License. --- You may obtain a copy of the License at --- --- http://www.apache.org/licenses/LICENSE-2.0 --- --- Unless required by applicable law or agreed to in writing, software --- distributed under the License is distributed on an "AS IS" BASIS, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the License for the specific language governing permissions and --- limitations under the License. --- --- Copyright (C) 2015-present, TBOOX Open Source Group. --- --- @author ruki --- @file server.lua --- - --- imports -import("core.base.object") -import("core.base.socket") - --- define module -local server = server or object() - --- init server -function server:init() -end - --- set handler -function server:handler_set(handler) - self._HANDLER = handler -end - --- get the listen address -function server:addr() - return "127.0.0.1" -end - --- get the listen port -function server:port() - return 90091 -end - --- run main loop -function server:runloop() - assert(self._HANDLER, "no handler found!") - local sock = socket.bind(self:addr(), self:port()) - sock:listen(100) - print("%s: listening %s:%d ..", self, self:addr(), self:port()) - while true do - local sock_client = sock:accept() - if sock_client then - scheduler.co_start(function (sock) - self._HANDLER(self, sock) - sock:close() - end, sock_client) - end - end - sock:close() -end - --- get class -function server:class() - return server -end - -function server:__tostring() - return "<server>" -end - -function main() - local instance = server() - instance:init() - return instance -end |
