use XML::Atom::Content;
+
+use constant ACTIVITY_NAMESPACE_URI => "http://activitystrea.ms/spec/1.0/";
+use constant ACTIVITY_NAMESPACE => XML::Atom::Namespace->new(
+ 'activity' => ACTIVITY_NAMESPACE_URI,
+);
+
sub identify {
my $class = shift;
my $xml = shift;
sub init_empty {
my ($feed, %args) = @_;
$args{'Version'} ||= '1.0';
-
$feed->{atom} = XML::Atom::Feed->new(%args);
+ $feed->{atom}->set_attr('xmlns:activity' => ACTIVITY_NAMESPACE_URI); # TODO HACK!
$feed;
}
use XML::Atom::Entry;
use List::Util qw( first );
-use constant ACTIVITY_NAMESPACE_URI => "http://activitystrea.ms/spec/1.0/";
-use constant ACTIVITY_NAMESPACE => XML::Atom::Namespace->new(
- 'activity' => ACTIVITY_NAMESPACE_URI,
-);
sub init_empty {
my $entry = shift;
my @things = @_;
# Remove all of the existing elements.
- my @existing = XML::Atom::Util::childlist($entry->elem, ACTIVITY_NAMESPACE_URI(), $name);
+ my @existing = XML::Atom::Util::childlist($entry->elem, XML::Feed::Format::Atom::ACTIVITY_NAMESPACE_URI(), $name);
foreach my $elem (@existing) {
$entry->elem->removeChild($elem);
}
foreach my $thing (@things) {
- $entry->set(ACTIVITY_NAMESPACE(), $name, $thing, undef, 1);
+ $entry->set(XML::Feed::Format::Atom::ACTIVITY_NAMESPACE(), $name, $thing, undef, 1);
+ #XML::Atom::Base::set($entry, ACTIVITY_NAMESPACE(), $name, $thing, undef, 1);
}
}
else {
# children. This might get troublesome if, for example,
# there's ever an activity entry with an activity as its
# object, or something crazy like that.
- return $entry->getlist(ACTIVITY_NAMESPACE(), $name);
+ return $entry->getlist(XML::Feed::Format::Atom::ACTIVITY_NAMESPACE(), $name);
}
}
# $entry->set(ACTIVITY_NAMESPACE, 'object', $xml_atom_entry);
die "setting activity_object is not yet implemented";
} else {
- my ($object_elem) = XML::Atom::Util::childlist($entry->elem, ACTIVITY_NAMESPACE_URI(), 'object');
+ my ($object_elem) = XML::Atom::Util::childlist($entry->elem, XML::Feed::Format::Atom::ACTIVITY_NAMESPACE_URI(), 'object');
if (defined $object_elem) {
my $ret = XML::Atom::Entry->new(Elem => $object_elem);
# If we're holding an activity:object element then our primary