00001 #ifndef ERIS_ROUTER_H
00002 #define ERIS_ROUTER_H
00003
00004 #include <Atlas/Objects/ObjectsFwd.h>
00005
00006 namespace Eris
00007 {
00008
00010 class Router
00011 {
00012 public:
00013 typedef enum {
00014 IGNORED = 0,
00015 HANDLED,
00016 WILL_REDISPATCH
00017 } RouterResult;
00018 virtual ~Router();
00019
00020 virtual RouterResult handleObject(const Atlas::Objects::Root& obj);
00021
00022 virtual RouterResult handleOperation(const Atlas::Objects::Operation::RootOperation& op);
00023 virtual RouterResult handleEntity(const Atlas::Objects::Entity::RootEntity& ent);
00024 };
00025
00026 }
00027
00028 #endif