isValidOpType() public static method

public static isValidOpType ( string $opType ) : boolean
$opType string
return boolean
Beispiel #1
0
 /**
  * @group unit
  */
 public function testAction()
 {
     $action = new Action();
     $this->assertEquals('index', $action->getOpType());
     $this->assertFalse($action->hasSource());
     $expected = '{"index":{}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $action->setIndex('index');
     $expected = '{"index":{"_index":"index"}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $action->setType('type');
     $expected = '{"index":{"_index":"index","_type":"type"}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $action->setId(1);
     $expected = '{"index":{"_index":"index","_type":"type","_id":1}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $action->setRouting(1);
     $expected = '{"index":{"_index":"index","_type":"type","_id":1,"_routing":1}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $client = $this->_getClient();
     $index = new Index($client, 'index2');
     $type = new Type($index, 'type2');
     $action->setIndex($index);
     $expected = '{"index":{"_index":"index2","_type":"type","_id":1,"_routing":1}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $action->setType($type);
     $expected = '{"index":{"_index":"index2","_type":"type2","_id":1,"_routing":1}}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $action->setSource(array('user' => 'name'));
     $expected = '{"index":{"_index":"index2","_type":"type2","_id":1,"_routing":1}}' . "\n";
     $expected .= '{"user":"******"}' . "\n";
     $this->assertEquals($expected, $action->toString());
     $this->assertTrue($action->hasSource());
     $this->assertFalse(Action::isValidOpType('foo'));
     $this->assertTrue(Action::isValidOpType('delete'));
 }
Beispiel #2
0
 /**
  * @param array $data
  *
  * @throws \Elastica\Exception\InvalidException
  *
  * @return $this
  */
 public function addRawData(array $data)
 {
     foreach ($data as $row) {
         if (is_array($row)) {
             $opType = key($row);
             $metadata = reset($row);
             if (Action::isValidOpType($opType)) {
                 // add previous action
                 if (isset($action)) {
                     $this->addAction($action);
                 }
                 $action = new Action($opType, $metadata);
             } elseif (isset($action)) {
                 $action->setSource($row);
                 $this->addAction($action);
                 $action = null;
             } else {
                 throw new InvalidException('Invalid bulk data, source must follow action metadata');
             }
         } else {
             throw new InvalidException('Invalid bulk data, should be array of array, Document or Bulk/Action');
         }
     }
     // add last action if available
     if (isset($action)) {
         $this->addAction($action);
     }
     return $this;
 }