public function nodeIsOfType($nodeTypes)
{
$propertyConditionGenerator = new PropertyConditionGenerator('nodeType');
if (!is_array($nodeTypes)) {
$nodeTypes = array($nodeTypes);
}
$expandedNodeTypeNames = array();
foreach ($nodeTypes as $nodeTypeName) {
$subNodeTypes = $this->nodeTypeManager->getSubNodeTypes($nodeTypeName, false);
$expandedNodeTypeNames = array_merge($expandedNodeTypeNames, array($nodeTypeName), array_keys($subNodeTypes));
}
return $propertyConditionGenerator->in(array_unique($expandedNodeTypeNames));
}