1042 |
} |
} |
1043 |
|
|
1044 |
|
|
1045 |
|
=head2 name |
1046 |
|
|
1047 |
|
my $node_name = $node->name; |
1048 |
|
|
1049 |
|
=cut |
1050 |
|
|
1051 |
|
sub name { |
1052 |
|
my $self = shift; |
1053 |
|
$self->set_info unless ($self->{name}); |
1054 |
|
return $self->{name}; |
1055 |
|
} |
1056 |
|
|
1057 |
|
|
1058 |
|
=head2 label |
1059 |
|
|
1060 |
|
my $node_label = $node->label; |
1061 |
|
|
1062 |
|
=cut |
1063 |
|
|
1064 |
|
sub label { |
1065 |
|
my $self = shift; |
1066 |
|
$self->set_info unless ($self->{label}); |
1067 |
|
return $self->{label}; |
1068 |
|
} |
1069 |
|
|
1070 |
|
|
1071 |
|
=head2 doc_num |
1072 |
|
|
1073 |
|
my $documents_in_node = $node->doc_num; |
1074 |
|
|
1075 |
|
=cut |
1076 |
|
|
1077 |
|
sub doc_num { |
1078 |
|
my $self = shift; |
1079 |
|
$self->set_info if ($self->{dnum} < 0); |
1080 |
|
return $self->{dnum}; |
1081 |
|
} |
1082 |
|
|
1083 |
|
|
1084 |
|
=head2 word_num |
1085 |
|
|
1086 |
|
my $words_in_node = $node->word_num; |
1087 |
|
|
1088 |
|
=cut |
1089 |
|
|
1090 |
|
sub word_num { |
1091 |
|
my $self = shift; |
1092 |
|
$self->set_info if ($self->{wnum} < 0); |
1093 |
|
return $self->{wnum}; |
1094 |
|
} |
1095 |
|
|
1096 |
|
|
1097 |
|
=head2 size |
1098 |
|
|
1099 |
|
my $node_size = $node->size; |
1100 |
|
|
1101 |
|
=cut |
1102 |
|
|
1103 |
|
sub size { |
1104 |
|
my $self = shift; |
1105 |
|
$self->set_info if ($self->{size} < 0); |
1106 |
|
return $self->{size}; |
1107 |
|
} |
1108 |
|
|
1109 |
|
|
1110 |
|
|
1111 |
=head2 shuttle_url |
=head2 shuttle_url |
1219 |
return $self->{status}; |
return $self->{status}; |
1220 |
} |
} |
1221 |
|
|
1222 |
|
|
1223 |
|
=head2 set_info |
1224 |
|
|
1225 |
|
Set information for node |
1226 |
|
|
1227 |
|
$node->set_info; |
1228 |
|
|
1229 |
|
=cut |
1230 |
|
|
1231 |
|
sub set_info { |
1232 |
|
my $self = shift; |
1233 |
|
|
1234 |
|
$self->{status} = -1; |
1235 |
|
return unless ($self->{url}); |
1236 |
|
|
1237 |
|
my $resbody; |
1238 |
|
my $rv = $self->shuttle_url( $self->{url} . '/inform', |
1239 |
|
'text/plain', |
1240 |
|
undef, |
1241 |
|
\$resbody, |
1242 |
|
); |
1243 |
|
|
1244 |
|
return if ($rv != 200 || !$resbody); |
1245 |
|
|
1246 |
|
chomp($resbody); |
1247 |
|
|
1248 |
|
( $self->{name}, $self->{label}, $self->{dnum}, $self->{wnum}, $self->{size} ) = |
1249 |
|
split(/\t/, $resbody, 5); |
1250 |
|
|
1251 |
|
} |
1252 |
|
|
1253 |
### |
### |
1254 |
|
|
1255 |
=head1 EXPORT |
=head1 EXPORT |