Project

General

Profile

Download (1.7 KB) Statistics
| Branch: | Tag: | Revision:
5e97edd9 Marc Dequènes (Duck)
#!/usr/bin/ruby -Ku

#--
# CyborgHood, a distributed system management software.
# Copyright (c) 2009-2010 Marc Dequènes (Duck) <Duck@DuckCorp.org>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#++

# to allow in-place run for test
$: << File.join(File.dirname(__FILE__), "..", "lib")

require 'cyborghood/cyborg'


module CyborgHood
f8eacaad Marc Dequènes (Duck)
module LibrarianHome
5e97edd9 Marc Dequènes (Duck)
include I18nTranslation
f8eacaad Marc Dequènes (Duck)
bindtextdomain("cyborghood_librarian", {:path => Config::L10N_DIR, :charset => "UTF-8"})
5e97edd9 Marc Dequènes (Duck)
f8eacaad Marc Dequènes (Duck)
class Librarian < Cyborg
e75cca5b Marc Dequènes (Duck)
# load config before modules are included
f8eacaad Marc Dequènes (Duck)
Config.load(self.human_name)
e75cca5b Marc Dequènes (Duck)
f8eacaad Marc Dequènes (Duck)
include BotNetServer
5e97edd9 Marc Dequènes (Duck)
f8eacaad Marc Dequènes (Duck)
def interface
LibrarianInterface.instance
end
end

class LibrarianInterface
include CyborgServerInterface
include CyborgServerRootInterfaceAddon
e321ca6f Marc Dequènes (Duck)
f8eacaad Marc Dequènes (Duck)
class Gruik
include CyborgServerInterface

def api_methods
["g1", "g2", "g3"]
5e97edd9 Marc Dequènes (Duck)
end
f8eacaad Marc Dequènes (Duck)
dynamic_interface {|node_name| ">>> #{node_name} <<<" }
5e97edd9 Marc Dequènes (Duck)
end
end
end
end

f8eacaad Marc Dequènes (Duck)
bot = CyborgHood::LibrarianHome::Librarian.new
5e97edd9 Marc Dequènes (Duck)
trap('INT') do
bot.ask_to_stop
end
trap('TERM') do
bot.ask_to_stop
end

bot.run