本文整理汇总了PHP中Node::setId方法的典型用法代码示例。如果您正苦于以下问题:PHP Node::setId方法的具体用法?PHP Node::setId怎么用?PHP Node::setId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Node
的用法示例。
在下文中一共展示了Node::setId方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testCommitBatch_DeleteNode_Success_ReturnsTrue
public function testCommitBatch_DeleteNode_Success_ReturnsTrue()
{
$node = new Node($this->client);
$node->setId(123);
$this->client->getEntityCache()->setCachedEntity($node);
$request = array(array('id' => 0, 'method' => 'DELETE', 'to' => '/node/123'));
$return = array('code' => 200, 'data' => array(array('id' => 0)));
$this->batch->delete($node);
$this->setupTransportExpectation($request, $this->returnValue($return));
$result = $this->client->commitBatch($this->batch);
$this->assertTrue($result);
$this->assertFalse($this->client->getEntityCache()->getCachedEntity(123, 'node'));
}
示例2: addNode
/**
* @param Node $node
*
* @return $this
*/
public function addNode(Node $node)
{
if (isset($this->idList[$node->id])) {
/**
* @todo -> fix this behavior so the get last is working again
*/
$node->setId($this->getNextPossibleIdInContext($node));
}
// add to the keylist for iterations
if (isset($this->keyList[$node->key])) {
$this->keyList[$node->key]->push($node);
} else {
$this->keyList[$node->key] = new \SplDoublyLinkedList();
$this->keyList[$node->key]->push($node);
}
$this->list[$node->key] = $node;
$this->idList[$node->id] = $node;
return $this;
}
示例3: testSerialize_KeepsStartEndAndType
public function testSerialize_KeepsStartEndAndType()
{
$expectedStart = new Node($this->client);
$expectedStart->setId(123);
$expectedEnd = new Node($this->client);
$expectedEnd->setId(456);
$this->relationship->setType($this->type)->setStartNode($expectedStart)->setEndNode($expectedEnd);
// serialize and unserialize
$data = serialize($this->relationship);
$rel = unserialize($data);
// we must reset the client
$rel->setClient($this->client);
$start = $rel->getStartNode();
$end = $rel->getEndNode();
$this->assertEquals($this->relationship, $rel, 'The relationship is restored by unserialize');
$this->assertEquals($expectedStart, $start, 'The start node should be restored by unserialize');
$this->assertEquals($expectedEnd, $end, 'The end node should be restored by unserialize');
$this->assertEquals($this->type, $rel->getType(), 'The type should be restored by unserialize');
$this->assertEquals($this->client, $start->getClient(), 'The client should be restored in the start node by setClient on the relation');
$this->assertEquals($this->client, $end->getClient(), 'The client should be restored in the end node by setClient on the relation');
}
示例4: testRemoveFromIndex_RelationshipTypeMismatch_ThrowsException
public function testRemoveFromIndex_RelationshipTypeMismatch_ThrowsException()
{
$index = new Index($this->client, Index::TypeRelationship, 'indexname');
$node = new Node($this->client);
$node->setId(123);
$this->setExpectedException('\\Sgpatil\\Orientphp\\Exception');
$this->client->removeFromIndex($index, $node);
}
示例5: testGetNodeRelationships_Relationships_ReturnsArray
public function testGetNodeRelationships_Relationships_ReturnsArray()
{
$node = new Node($this->client);
$node->setId(123);
$types = array('FOOTYPE', 'BARTYPE');
$dir = Relationship::DirectionOut;
$data = array(array("self" => "http://localhost:7474/db/data/relationship/56", "start" => "http://localhost:7474/db/data/node/123", "end" => "http://localhost:7474/db/data/node/93", "type" => "KNOWS", "data" => array('foo' => 'bar', 'baz' => 'qux')), array("self" => "http://localhost:7474/db/data/relationship/834", "start" => "http://localhost:7474/db/data/node/32", "end" => "http://localhost:7474/db/data/node/123", "type" => "LOVES", "data" => array('bar' => 'foo', 'qux' => 'baz')));
$this->transport->expects($this->once())->method('get')->with('/node/123/relationships/out/FOOTYPE&BARTYPE')->will($this->returnValue(array('code' => 200, 'data' => $data)));
$result = $this->client->getNodeRelationships($node, $types, $dir);
$this->assertEquals(2, count($result));
$this->assertInstanceOf('Everyman\\Neo4j\\Relationship', $result[0]);
$this->assertEquals(56, $result[0]->getId());
$this->assertEquals($data[0]['data'], $result[0]->getProperties());
$this->assertInstanceOf('Everyman\\Neo4j\\Node', $result[0]->getStartNode());
$this->assertEquals(123, $result[0]->getStartNode()->getId());
$this->assertInstanceOf('Everyman\\Neo4j\\Node', $result[0]->getEndNode());
$this->assertEquals(93, $result[0]->getEndNode()->getId());
$this->assertInstanceOf('Everyman\\Neo4j\\Relationship', $result[1]);
$this->assertEquals(834, $result[1]->getId());
$this->assertEquals($data[1]['data'], $result[1]->getProperties());
$this->assertInstanceOf('Everyman\\Neo4j\\Node', $result[1]->getStartNode());
$this->assertEquals(32, $result[1]->getStartNode()->getId());
$this->assertInstanceOf('Everyman\\Neo4j\\Node', $result[1]->getEndNode());
$this->assertEquals(123, $result[1]->getEndNode()->getId());
}
示例6: testDeleteNode_Failure_NodeRemainsInCache
public function testDeleteNode_Failure_NodeRemainsInCache()
{
$nodeId = 123;
$node = new Node($this->client);
$node->setId($nodeId);
$this->transport->expects($this->once())->method('delete')->with('/node/' . $nodeId)->will($this->returnValue(array('code' => '400')));
$this->cache->set("node-{$nodeId}", $node);
try {
$this->client->deleteNode($node);
$this->fail();
} catch (Exception $e) {
$this->assertSame($node, $this->cache->get("node-{$nodeId}"));
}
}
示例7: testImplicitBatch_StartBatch_CloseBatch_ExpectedBatchRequest
public function testImplicitBatch_StartBatch_CloseBatch_ExpectedBatchRequest()
{
$startNode = new Node($this->client);
$endNode = new Node($this->client);
$endNode->setId(456)->useLazyLoad(false);
$rel = new Relationship($this->client);
$rel->setType('TEST')->setStartNode($startNode)->setEndNode($endNode);
$deleteNode = new Node($this->client);
$deleteNode->setId(987);
$deleteRel = new Relationship($this->client);
$deleteRel->setId(321);
$addIndexNode = new Node($this->client);
$addIndexNode->setId(654);
$removeIndexNode = new Node($this->client);
$removeIndexNode->setId(209);
$index = new Index($this->client, Index::TypeNode, 'indexname');
$request = array(array('id' => 0, 'method' => 'POST', 'to' => '/node', 'body' => null), array('id' => 1, 'method' => 'PUT', 'to' => '/node/456/properties', 'body' => array()), array('id' => 2, 'method' => 'POST', 'to' => '{0}/relationships', 'body' => array('to' => $this->endpoint . '/node/456', 'type' => 'TEST')), array('id' => 3, 'method' => 'DELETE', 'to' => '/node/987'), array('id' => 4, 'method' => 'DELETE', 'to' => '/relationship/321'), array('id' => 5, 'method' => 'POST', 'to' => '/index/node/indexname', 'body' => array('key' => 'addkey', 'value' => 'addvalue', 'uri' => $this->endpoint . '/node/654')), array('id' => 6, 'method' => 'DELETE', 'to' => '/index/node/indexname/removekey/removevalue/209'));
$return = array('code' => 200, 'data' => array(array('id' => 0, 'location' => 'http://foo:1234/db/data/node/123'), array('id' => 1), array('id' => 2, 'location' => 'http://foo:1234/db/data/relationship/789'), array('id' => 3), array('id' => 4), array('id' => 5), array('id' => 6)));
$this->setupTransportExpectation($request, $this->returnValue($return));
$batch = $this->client->startBatch();
$this->assertInstanceOf('Sgpatil\\Orientphp\\Batch', $batch);
$startNode->save();
$endNode->save();
$rel->save();
$deleteNode->delete();
$deleteRel->delete();
$index->add($addIndexNode, 'addkey', 'addvalue');
$index->remove($removeIndexNode, 'removekey', 'removevalue');
$this->assertTrue($this->client->commitBatch());
$this->assertEquals(789, $rel->getId());
$this->assertEquals(123, $startNode->getId());
}
示例8: testDump_PathsGiven_FileDescriptor_ReturnsDescriptor
public function testDump_PathsGiven_FileDescriptor_ReturnsDescriptor()
{
$nodeA = new Node($this->client);
$nodeA->setId(123)->setProperties(array('foo' => 'bar', 'baz' => 'qux'));
$nodeB = new Node($this->client);
$nodeB->setId(456)->setProperties(array('somekey' => 'somevalue'));
$relA = new Relationship($this->client);
$relA->setId(987)->setType('TEST')->setStartNode($nodeA)->setEndNode($nodeB)->setProperties(array('anotherkey' => 'anothervalue'));
$path = new Path();
$path->appendNode($nodeA);
$path->appendNode($nodeB);
$path->appendRelationship($relA);
$expected = <<<GEOFF
(123)\t{"foo":"bar","baz":"qux"}
(456)\t{"somekey":"somevalue"}
(123)-[987:TEST]->(456)\t{"anotherkey":"anothervalue"}
GEOFF;
$handle = fopen('data:text/plain,', 'w+');
$resultHandle = $this->geoff->dump($path, $handle);
self::assertSame($handle, $resultHandle);
self::assertEquals($expected, stream_get_contents($resultHandle, -1, 0));
}
示例9: testGetPaths_TransportFails_ThrowsException
public function testGetPaths_TransportFails_ThrowsException()
{
$startNode = new Node($this->client);
$startNode->setId(123);
$endNode = new Node($this->client);
$endNode->setId(456);
$finder = new PathFinder($this->client);
$finder->setType('FOOTYPE')->setDirection(Relationship::DirectionOut)->setMaxDepth(3)->setStartNode($startNode)->setEndNode($endNode);
$this->transport->expects($this->any())->method('post')->will($this->returnValue(array('code' => 400)));
$this->setExpectedException('\\Everyman\\Neo4j\\Exception');
$this->client->getPaths($finder);
}
示例10: testRemoveLabels_NoLabelsGiven_ThrowsException
public function testRemoveLabels_NoLabelsGiven_ThrowsException()
{
$node = new Node($this->client);
$node->setId(123);
$this->transport->expects($this->never())->method('post');
$this->setExpectedException('InvalidArgumentException', 'No labels');
$this->client->removeLabels($node, array());
}
示例11: testGetNodeRelationships_UrlCharactersInTypeName_EncodesCorrectly
public function testGetNodeRelationships_UrlCharactersInTypeName_EncodesCorrectly()
{
$node = new Node($this->client);
$node->setId(123);
$types = array('FOO\\TYPE', 'BAR?TYPE', 'BAZ/TYPE');
$this->transport->expects($this->once())->method('get')->with('/node/123/relationships/all/FOO%5CTYPE&BAR%3FTYPE&BAZ%2FTYPE')->will($this->returnValue(array('code' => 200, 'data' => array())));
$result = $this->client->getNodeRelationships($node, $types);
}
示例12: testRemoveFromIndex_Index_ReturnsIntegerOperationIndex
public function testRemoveFromIndex_Index_ReturnsIntegerOperationIndex()
{
$nodeA = new Node($this->client);
$nodeA->setId(123);
$nodeB = new Node($this->client);
$nodeB->setId(456);
$index = new Index($this->client, Index::TypeNode, 'indexname');
$this->assertEquals(0, $this->batch->removeFromIndex($index, $nodeA, 'somekey', 'somevalue'));
$this->assertEquals(1, $this->batch->removeFromIndex($index, $nodeA, 'otherkey'));
$this->assertEquals(2, $this->batch->removeFromIndex($index, $nodeA));
$this->assertEquals(3, $this->batch->removeFromIndex($index, $nodeB, 'diffkey', 'diffvalue'));
}
示例13: testCommitBatch_RemoveFromIndex_EntityKeyValue_Success_ReturnsTrue
public function testCommitBatch_RemoveFromIndex_EntityKeyValue_Success_ReturnsTrue()
{
$node = new Node($this->client);
$node->setId(123);
$index = new Index($this->client, Index::TypeNode, 'indexname');
$request = array(array('id' => 0, 'method' => 'DELETE', 'to' => '/index/node/indexname/somekey/somevalue/123'));
$return = array('code' => 200, 'data' => array(array('id' => 0)));
$this->batch->removeFromIndex($index, $node, 'somekey', 'somevalue');
$this->setupTransportExpectation($request, $this->returnValue($return));
$result = $this->client->commitBatch($this->batch);
$this->assertTrue($result);
}
示例14: testPagedTraversal_ServerReturnsError_ThrowsException
public function testPagedTraversal_ServerReturnsError_ThrowsException()
{
$traversal = new Traversal($this->client);
$traversal->setOrder(Traversal::OrderDepthFirst);
$node = new Node($this->client);
$node->setId(1);
$pager = new Pager($traversal, $node, Traversal::ReturnTypeNode);
$pager->setPageSize(1)->setLeaseTime(30);
$this->transport->expects($this->once())->method('post')->with('/node/1/paged/traverse/node?pageSize=1&leaseTime=30', array("order" => "depth_first"))->will($this->returnValue(array("code" => 400)));
$this->setExpectedException('Everyman\\Neo4j\\Exception');
$result = $this->client->executePagedTraversal($pager);
}