Code Duplication    Length = 10-11 lines in 2 locations

src/SilverStripe/Elastica/ElasticaService.php 1 location

@@ 509-519 (lines=11) @@
506
			$inSiteTree = $classname === 'SiteTree' ? true : false;
507
			if(isset(self::$site_tree_classes[$classname])) {
508
				$inSiteTree = self::$site_tree_classes[$classname];
509
			} else {
510
				$class = new \ReflectionClass($classname);
511
				while($class = $class->getParentClass()) {
512
					$parentClass = $class->getName();
513
					if($parentClass == 'SiteTree') {
514
						$inSiteTree = true;
515
						break;
516
					}
517
				}
518
				self::$site_tree_classes[$classname] = $inSiteTree;
519
			}
520
521
			if($inSiteTree) {
522
				// this prevents the same item being indexed twice due to class inheritance

src/SilverStripe/Elastica/SearchableHelper.php 1 location

@@ 126-135 (lines=10) @@
123
124
	public static function isInSiteTree($classname) {
125
		$inSiteTree = ($classname === 'SiteTree' ? true : false);
126
		if(!$inSiteTree) {
127
			$class = new \ReflectionClass($classname);
128
			while($class = $class->getParentClass()) {
129
				$parentClass = $class->getName();
130
				if($parentClass == 'SiteTree') {
131
					$inSiteTree = true;
132
					break;
133
				}
134
			}
135
		}
136
		return $inSiteTree;
137
	}
138