예제 #1
0
 /**
  * @param  RokUpdater_Uri $fromUri
  * @param  RokUpdater_Uri $toUri
  * @param      array<RokUpdater_Uri_Components>
  *
  * @return RokUpdater_Uri
  */
 private static function copySpecificComponents(RokUpdater_Uri $fromUri, RokUpdater_Uri $toUri, array $components)
 {
     foreach ($components as $component) {
         switch ($component) {
             case RokUpdater_Uri_Components::SCHEME:
                 $toUri->setScheme($fromUri->getScheme());
                 break;
             case RokUpdater_Uri_Components::USERINFO:
                 $toUri->setUserInfo($fromUri->getUserInfo());
                 break;
             case RokUpdater_Uri_Components::HOST:
                 $toUri->setHost($fromUri->getHost());
                 break;
             case RokUpdater_Uri_Components::PORT:
                 $toUri->setPort($fromUri->getPort());
                 break;
             case RokUpdater_Uri_Components::PATH:
                 $toUri->setPath($fromUri->getPath());
                 break;
             case RokUpdater_Uri_Components::QUERY:
                 $toUri->setQuery($fromUri->getQuery());
                 break;
             case RokUpdater_Uri_Components::FRAGMENT:
                 $toUri->setFragment($fromUri->getFragment());
                 break;
         }
     }
     return $toUri;
 }