package Java::JCR::Node; # This code was automatically generated by a combination of the # JCRPackageGenerator.java and package-generator.pl programs. These are both # distributed in the inc/ directory of the Java-JCR distribution. You should # be able to find the latest Java-JCR distribution at: # # http://search.cpan.org/~hanenkamp/Java-JCR/ # use strict; use warnings; use base qw( Java::JCR::Base Java::JCR::Item ); our $VERSION = '0.07'; use Carp; use Inline ( Java => 'STUDY', STUDY => [], ); use Inline::Java qw( study_classes ); study_classes(['javax.jcr.Node'], 'Java::JCR'); sub has_property { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->hasProperty(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub done_merge { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->doneMerge(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub remove { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->remove(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_lock { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getLock(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.lock.Lock", "Java::JCR::Lock::Lock"); } sub get_name { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getName(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub lock { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->lock(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.lock.Lock", "Java::JCR::Lock::Lock"); } sub restore { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->restore(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_references { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getReferences(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.PropertyIterator", "Java::JCR::PropertyIterator"); } sub has_nodes { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->hasNodes(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_path { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getPath(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub save { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->save(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_properties { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getProperties(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.PropertyIterator", "Java::JCR::PropertyIterator"); } sub refresh { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->refresh(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub set_property { my $self = shift; my ($name, $value) = @_; my @args; if (Java::JCR::Calendar::_perl_date_has_conversion($value)) { @args = ($name, Java::JCR::Calendar::_perl_date_to_java_calendar($value)); } else { @args = Java::JCR::Base::_process_args(@_); } my $result = eval { $self->{obj}->setProperty(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, 'javax.jcr.Property', 'Java::JCR::Property'); } sub is_node { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isNode(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub unlock { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->unlock(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub has_node { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->hasNode(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub is_locked { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isLocked(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_primary_node_type { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getPrimaryNodeType(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.nodetype.NodeType", "Java::JCR::Nodetype::NodeType"); } sub is_checked_out { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isCheckedOut(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub remove_mixin { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->removeMixin(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub add_node { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->addNode(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Node", "Java::JCR::Node"); } sub get_version_history { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getVersionHistory(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.version.VersionHistory", "Java::JCR::Version::VersionHistory"); } sub get_depth { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getDepth(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_uuid { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getUUID(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_session { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getSession(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Session", "Java::JCR::Session"); } sub get_corresponding_node_path { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getCorrespondingNodePath(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub is_same { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isSame(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_ancestor { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getAncestor(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Item", "Java::JCR::Item"); } sub holds_lock { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->holdsLock(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub order_before { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->orderBefore(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub merge { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->merge(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.NodeIterator", "Java::JCR::NodeIterator"); } sub has_properties { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->hasProperties(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub checkin { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->checkin(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.version.Version", "Java::JCR::Version::Version"); } sub get_node { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getNode(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Node", "Java::JCR::Node"); } sub accept { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->accept(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_property { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getProperty(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Property", "Java::JCR::Property"); } sub get_index { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getIndex(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub is_node_type { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isNodeType(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_primary_item { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getPrimaryItem(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Item", "Java::JCR::Item"); } sub get_nodes { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getNodes(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.NodeIterator", "Java::JCR::NodeIterator"); } sub cancel_merge { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->cancelMerge(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_mixin_node_types { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getMixinNodeTypes(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "Array:javax.jcr.nodetype.NodeType", "Java::JCR::Nodetype::NodeType"); } sub is_new { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isNew(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub checkout { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->checkout(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_base_version { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getBaseVersion(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.version.Version", "Java::JCR::Version::Version"); } sub get_parent { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getParent(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.Node", "Java::JCR::Node"); } sub can_add_mixin { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->canAddMixin(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub is_modified { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->isModified(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub update { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->update(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub add_mixin { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->addMixin(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub restore_by_label { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->restoreByLabel(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return $result; } sub get_definition { my $self = shift; my @args = Java::JCR::Base::_process_args(@_); my $result = eval { $self->{obj}->getDefinition(@args) }; if ($@) { my $e = Java::JCR::Exception->new($@); croak $e } return Java::JCR::Base::_process_return($result, "javax.jcr.nodetype.NodeDefinition", "Java::JCR::Nodetype::NodeDefinition"); } 1; __END__ =head1 NAME Java::JCR::Node - Perl wrapper for javax.jcr.Node =head1 DESCRIPTION This is an automatically generated package wrapping javax.jcr.Node with a nice Perlish API. For full documentation of what this class does, see the Java API documentation: L The deviations from the API documentation include the following: =over =item * You will need to use Perl, intead of Java, to make any use of this API. (Duh.) =item * The package to use is L, rather than I. =item * All method names have been changed from Java-style C to Perl-style C. Thus, if the function were named C in the Java API, it will be named C in this API. As another example, C in the Java API will be C in this API. =item * Handle exceptions just like typical Perl. L takes care of making sure that works as expected. =back =head1 SEE ALSO L, L =head1 AUTHOR Andrew Sterling Hanenkamp, Ehanenkamp@cpan.orgE =head1 LICENSE AND COPYRIGHT Copyright 2006 Andrew Sterling Hanenkamp Ehanenkamp@cpan.orgE. All Rights Reserved. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See L. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. =cut