for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace As3\Modlr\Search\Elastic;
use As3\Modlr\Exception\MetadataException;
use As3\Modlr\Metadata\EntityMetadata;
use As3\Modlr\Metadata\Interfaces\StorageLayerInterface;
use As3\Modlr\Metadata\Interfaces\StorageMetadataFactoryInterface;
use As3\Modlr\Util\EntityUtility;
/**
* Creates Elastic search storage Metadata instances for use with metadata drivers.
* Is also responsible for validating storage objects.
*
* @author Jacob Bare <[email protected]>
*/
final class StorageMetadataFactory implements StorageMetadataFactoryInterface
{
* {@inheritDoc}
public function createInstance(array $mapping)
$search = new StorageMetadata();
if (isset($mapping['index'])) {
$search->index = $mapping['index'];
}
if (isset($mapping['type'])) {
$search->type = $mapping['type'];
return $search;
public function handleLoad(EntityMetadata $metadata)
public function handleValidate(EntityMetadata $metadata)
$search = $metadata->search;
$search
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
$myVar = 'Value'; $higher = false; if (rand(1, 6) > 3) { $higher = true; } else { $higher = false; }
Both the $myVar assignment in line 1 and the $higher assignment in line 2 are dead. The first because $myVar is never used and the second because $higher is always overwritten for every possible time line.
$myVar
$higher
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently.
Both the
$myVar
assignment in line 1 and the$higher
assignment in line 2 are dead. The first because$myVar
is never used and the second because$higher
is always overwritten for every possible time line.