20static const SessionId kInvalidSessionId = 0;
23 const char* message_type,
24 const char* message_value)>;
52 time_t last_active_time_ = 0;
56class ResourceResolver;
75 const string& message_type,
76 const string& message_value);
85 bool disabled() {
return !started_ || deployer_.IsMaintenanceMode(); }
92 using SessionMap = map<SessionId, an<Session>>;
97 bool started_ =
false;
#define RIME_DLL
Definition rime_api.h:33
std::shared_ptr< T > an
Definition common.h:60
std::unique_ptr< T > the
Definition common.h:58
uintptr_t SessionId
Definition service.h:18
function< void(SessionId session_id, const char *message_type, const char *message_value)> NotificationHandler
Definition service.h:22
Definition key_event.h:17
bool CommitComposition()
Definition service.cc:38
Session()
Definition service.cc:17
Context * context() const
Definition service.cc:59
Schema * schema() const
Definition service.cc:63
void Activate()
Definition service.cc:30
void ClearComposition()
Definition service.cc:45
bool ProcessKey(const KeyEvent &key_event)
Definition service.cc:26
void ResetCommitText()
Definition service.cc:34
time_t last_active_time() const
Definition service.h:45
const string & commit_text() const
Definition service.h:46
static const int kLifeSpan
Definition service.h:33
void ApplySchema(Schema *schema)
Definition service.cc:51
bool DestroySession(SessionId session_id)
Definition service.cc:120
ResourceResolver * CreateUserSpecificResourceResolver(const ResourceType &type)
Definition service.cc:174
ResourceResolver * CreateResourceResolver(const ResourceType &type)
Definition service.cc:167
an< Session > GetSession(SessionId session_id)
Definition service.cc:108
SessionId CreateSession()
Definition service.cc:85
bool disabled()
Definition service.h:85
void StopService()
Definition service.cc:80
void SetNotificationHandler(const NotificationHandler &handler)
Definition service.cc:149
void StartService()
Definition service.cc:76
ResourceResolver * CreateStagingResourceResolver(const ResourceType &type)
Definition service.cc:189
Deployer & deployer()
Definition service.h:84
ResourceResolver * CreateDeployedResourceResolver(const ResourceType &type)
Definition service.cc:181
void Notify(SessionId session_id, const string &message_type, const string &message_value)
Definition service.cc:157
void ClearNotificationHandler()
Definition service.cc:153
void CleanupAllSessions()
Definition service.cc:145
void CleanupStaleSessions()
Definition service.cc:128