NAME
REST::Neo4p::Node - Neo4j node object
SYNOPSIS
$n1
= REST::Neo4p::Node->new( {
name
=>
'Ferb'
} )
$n2
= REST::Neo4p::Node->new( {
name
=>
'Phineas'
} );
$n3
= REST::Neo4p::Node->new( {
name
=>
'Perry'
} );
$n1
->relate_to(
$n2
,
'brother'
);
$n3
->relate_to(
$n1
,
'pet'
);
$n3
->set_property({
species
=>
'Ornithorhynchus anatinus'
});
DESCRIPTION
REST::Neo4p::Node objects represent Neo4j nodes.
METHODS
- new()
-
$node
= REST::Neo4p::Node->new();
$node_with_properties
= REST::Neo4p::Node->new( \
%props
);
Instantiates a new Node object and creates corresponding node in the database.
- remove()
-
$node
->remove()
CAUTION: Removes a node from the database and destroys the object.
- get_property()
-
$name
=
$node
->get_property(
'name'
);
@vitals
=
$node
->get_property(
qw( height weight bp temp )
);
Get the values of properties on nodes and relationships.
- set_property()
-
$name
=
$node
->set_property( {
name
=>
"Sun Tzu"
,
occupation
=>
"General"
} );
$node1
->relate_to(
$node2
,
"is_pal_of"
)->set_property( {
duration
=>
'old pal'
} );
Sets values of properties on nodes and relationships.
- get_properties()
-
$props
=
$node
->get_properties;
print
"'Sup, Al."
if
(
$props
->{name} eq 'Al');
Get all the properties of a node or relationship as a hashref.
- remove_property()
-
$node
->remove_property(
'name'
);
$node
->remove_property(
@property_names
);
Remove properties from node.
- relate_to()
-
$relationship
=
$node1
->relate_to(
$node2
,
'manager'
, {
matrixed
=>
'yes'
});
Create a relationship between two nodes in the database and return the REST::Neo4p::Relationship object. Call on the "from" node, first argument is the "to" node, second argument is the relationship type, third optional argument is a hashref of relationship properties.
- get_relationships()
-
@all_relationships
=
$node1
->get_relationships()
Get all incoming and outgoing relationships of a node. Returns array of REST::Neo4p::Relationship objects;
- get_incoming_relationships()
-
@incoming_relationships
=
$node1
->get_incoming_relationships();
- get_outgoing_relationships()
-
@outgoing_relationships
=
$node1
->get_outgoing_relationships();
- property auto-accessors
- as_simple()
-
$simple_node
=
$node1
->as_simple
$node_id
=
$simple_node
->{_node};
$value
=
$simple_node
->{
$property_name
};
Get node as a simple hashref.
METHODS - Neo4j Version 2.0+
These methods are supported by v2.0+ of the Neo4j server.
- set_labels()
-
my
$node
=
$node
->set_labels(
$label1
,
$label2
);
Sets the node's labels. This replaces any existing node labels.
- add_labels()
-
my
$node
=
$node
->add_labels(
$label3
,
$label4
);
Add labels to the nodes existing labels.
- get_labels()
-
my
@labels
=
$node
->get_labels;
Retrieve the node's list of labels, if any.
- drop_labels()
-
my
$node
=
$node
->drop_labels(
$label1
,
$label4
);
Remove one or more labels from a node.
SEE ALSO
REST::Neo4p, REST::Neo4p::Relationship, REST::Neo4p::Index.
AUTHOR
Mark A. Jensen
CPAN ID: MAJENSEN
majensen -at- cpan -dot- org
LICENSE
Copyright (c) 2012-2022 Mark A. Jensen. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.