def route(request)
      prefix, method = request.type.split('/')[1..-1]
      method ||= :index
      method = method.to_sym
      actor = @registry.actor_for(prefix)
      if actor.nil? || !actor.respond_to?(method)
        raise InvalidRequestType, "Unknown actor or method for dispatching request <#{request.token}> of type #{request.type}"
      end
      [actor, method, actor.class.idempotent?(method)]
    end
def route(request)
      prefix, method = request.type.split('/')[1..-1]
      method ||= :index
      method = method.to_sym
      actor = @registry.actor_for(prefix)
      if actor.nil? || !actor.respond_to?(method)
        raise InvalidRequestType, "Unknown actor or method for dispatching request <#{request.token}> of type #{request.type}"
      end
      [actor, method, actor.class.idempotent?(method)]
    end
Use request type to route request to actor and an associated method

 === Parameters
 request(Push|Request):: Packet containing request

 === Return
 (Array):: Actor name, method name, and whether method is idempotent

 === Raise
 InvalidRequestType:: If the request cannot be routed to an actor