/** * @return wether this is a proxy to a remotely running actor */ @CallerSideMethod public boolean isRemote() { return __remoteId != 0; }
/** * @return the scheduler associated with this actor (determines scheduling of processing of actors to threads) */ @CallerSideMethod public Scheduler getScheduler() { return __scheduler; }
/** * dispatch call to a service. (use forwardXX to send) * @param rce * @param clientRemoteRegistry * @return return false in case call could not be dispatched */ @CallerSideMethod protected abstract boolean dispatchRemoteCall(RemoteCallEntry rce, ConnectionRegistry clientRemoteRegistry );
/** * synchronous method returning true in case this actor is stopped */ @CallerSideMethod public boolean isStopped() { return __stopped; }
/** * @return the scheduler associated with this actor (determines scheduling of processing of actors to threads) */ @CallerSideMethod public Scheduler getScheduler() { return __scheduler; }
/** * @return wether this is a proxy to a remotely running actor */ @CallerSideMethod public boolean isRemote() { return __remoteId != 0; }
/** * dispatch call to a service. (use forwardXX to send) * @param rce * @param clientRemoteRegistry * @return return false in case call could not be dispatched */ @CallerSideMethod protected abstract boolean dispatchRemoteCall(RemoteCallEntry rce, ConnectionRegistry clientRemoteRegistry );
/** * WARNING: call rarely, this method might have O(n) runtime with default unbounded queues. * @return true if mailbox fill size is ~half capacity */ @CallerSideMethod public boolean isMailboxPressured() { return __mailbox.size() * 2 > __mbCapacity; }
/** * WARNING: call rarely, this method might have O(n) runtime with default unbounded queues. * @return an estimation on the queued up callback entries. Can be used for bogus flow control. */ @CallerSideMethod public int getCallbackSize() { return __cbQueue.size(); }
@CallerSideMethod public void __removeRemoteConnection( ConnectionRegistry con ) { if ( __connections != null ) { __connections.remove(con); } } @CallerSideMethod public void __stop() { __stopImpl(); }
/** * WARNING: call rarely, this method might have O(n) runtime with default unbounded queues. * @return wether the callback queue is mor than half full (can indicate overload) */ @CallerSideMethod public boolean isCallbackQPressured() { return __cbQueue.size() * 2 > __mbCapacity; }
/** * WARNING: call rarely, this method might have O(n) runtime with default unbounded queues. * @return wether the callback queue is mor than half full (can indicate overload) */ @CallerSideMethod public boolean isCallbackQPressured() { return __cbQueue.size() * 2 > __mbCapacity; }
/** * WARNING: call rarely, this method might have O(n) runtime with default unbounded queues. * @return an estimation on the queued up entries in the mailbox. Can be used for bogus flow control */ @CallerSideMethod public int getMailboxSize() { return __mailbox.size(); }
/** * @return wether this is the "real" implementation or the proxy object */ @CallerSideMethod public boolean isProxy() { return getActor() != this; }
/** * @return wether this is the "real" implementation or the proxy object */ @CallerSideMethod public boolean isProxy() { return getActor() != this; }
@CallerSideMethod protected Actor getRemoteRef() { List<Actor> remoteServices = getActor().remoteServices; if ( remoteServices.size() == 0 ) return null; return remoteServices.get(0); }
/** * @return true wether this actor is published to network */ @CallerSideMethod public boolean isPublished() { return __connections != null && __connections.peek() != null; }
/** * @return true wether this actor is published to network */ @CallerSideMethod public boolean isPublished() { return __connections != null && __connections.peek() != null; }
/** * cb is invoked once the server sends back messages to a client, * the client does not necessary have an actor running but might simply connect * using ordinary mt code * @param cb */ @Local @CallerSideMethod public void setServerMsgCallback(Callback<RemoteCallEntry> cb) { zzServerMsgCallback = cb; } /**
/** * cb is invoked once the server sends back messages to a client, * the client does not necessary have an actor running but might simply connect * using ordinary mt code * @param cb */ @Local @CallerSideMethod public void setServerMsgCallback(Callback<RemoteCallEntry> cb) { zzServerMsgCallback = cb; } /**