Thruway\Subscription\StateHandlerRegistration::handlesStateFor PHP Метод

handlesStateFor() публичный Метод

public handlesStateFor ( SubscriptionGroup $subscriptionGroup )
$subscriptionGroup SubscriptionGroup
    public function handlesStateFor(SubscriptionGroup $subscriptionGroup)
    {
        if ($subscriptionGroup->getMatchType() == $this->getMatchType() || $subscriptionGroup->getMatchType() == "exact") {
            $sgUri = $subscriptionGroup->getUri();
            $sgOptions = $subscriptionGroup->getOptions();
            return $this->matcher->isSubGroup($this->getUri(), $this->getOptions(), $sgUri, $sgOptions);
        }
        return false;
    }

Usage Example

Пример #1
0
 /**
  * @param StateHandlerRegistration $stateHandlerRegistration
  */
 private function mapNewStateHandlerRegistration($stateHandlerRegistration)
 {
     $subscriptionGroups = $this->broker->getSubscriptionGroups();
     /** @var SubscriptionGroup $subscriptionGroup */
     foreach ($subscriptionGroups as $subscriptionGroup) {
         // only check groups without an existing state handler
         if (!$this->stateHandlerMap->contains($subscriptionGroup) || $this->stateHandlerMap->contains($subscriptionGroup) && $this->stateHandlerMap[$subscriptionGroup] === null) {
             if ($stateHandlerRegistration->handlesStateFor($subscriptionGroup)) {
                 $this->stateHandlerMap[$subscriptionGroup] = $stateHandlerRegistration;
             }
         }
     }
 }