Changeset 435
- Timestamp:
- 01/31/05 10:22:18 (4 years ago)
- Files:
-
- trunk/external-tools/indexer-backends/plucene/Midcom/Indexer/XMLComm.pm (modified) (3 diffs)
- trunk/external-tools/indexer-backends/plucene/Midcom/Plucene/BaseRequest.pm (added)
- trunk/external-tools/indexer-backends/plucene/Midcom/Plucene/DeleteRequest.pm (modified) (4 diffs)
- trunk/external-tools/indexer-backends/plucene/Midcom/Plucene/IndexRequest.pm (added)
- trunk/external-tools/indexer-backends/plucene/Midcom/Plucene/QueryRequest.pm (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/external-tools/indexer-backends/plucene/Midcom/Indexer/XMLComm.pm
r430 r435 11 11 use Midcom::Plucene::QueryRequest; 12 12 use Midcom::Plucene::DeleteRequest; 13 use Midcom::Plucene::IndexRequest; 13 14 14 15 =head1 NAME … … 174 175 { 175 176 my ($self, $node) = @_; 177 176 178 177 179 my $request_id = $node->getAttribute('id'); 178 180 my $document_node = $node->firstChild; 179 181 180 print "INDEX ID $request_id:\n";181 182 182 while ($document_node) 183 183 { 184 my $request = Midcom::Plucene::IndexRequest->new($self); 185 $request->id($request_id); 186 $request->documentID($document_node->getAttribute('id')); 187 184 188 # Parse the documents 185 my $document_id = $document_node->getAttribute('id');186 print "\tDocument ID $document_id\n";187 189 188 190 my $field = $document_node->firstChild; … … 193 195 my $content = $field->textContent; 194 196 195 print "\t\t$type $name = $content\n"; 197 if ($type eq 'date') 198 { 199 $request->addDate($field->getAttribute('name'), $field->textContent); 200 } 201 elsif ($type eq 'keyword') 202 { 203 $request->addKeyword($field->getAttribute('name'), $field->textContent); 204 } 205 elsif ($type eq 'unindexed') 206 { 207 $request->addUnIndexed($field->getAttribute('name'), $field->textContent); 208 } 209 elsif ($type eq 'unstored') 210 { 211 $request->addUnStored($field->getAttribute('name'), $field->textContent); 212 } 213 elsif ($type eq 'text') 214 { 215 $request->addText($field->getAttribute('name'), $field->textContent); 216 } 196 217 197 218 $field = $field->nextSibling(); 198 219 } 199 220 221 $request->dump; 222 push @{$self->{requests}}, $request; 200 223 201 224 # Go to the next document trunk/external-tools/indexer-backends/plucene/Midcom/Plucene/DeleteRequest.pm
r430 r435 8 8 use warnings; 9 9 10 use Midcom::Plucene::BaseRequest; 11 use Plucene::Index::Term; 10 12 use Time::Piece; 11 use Plucene::Index::Term; 13 14 15 @Midcom::Plucene::DeleteRequest::ISA = ('Midcom::Plucene::BaseRequest'); 16 12 17 13 18 =head1 NAME 14 19 15 Midcom::Plucene:: QueryDelete - QueryDelete interface20 Midcom::Plucene::DeleteRequest - Delete interface 16 21 17 22 =head1 SYNOPSIS … … 42 47 { 43 48 my $class = shift; 44 my $self = {};45 46 $self-> {_XMLComm} = shift;49 my $self = $class->SUPER::new(); 50 51 $self->type('delete'); 47 52 $self->{_documentID} = undef; 48 $self->{_id} = undef;49 53 50 54 bless ($self, $class); … … 61 65 return $self->{_documentID}; 62 66 } 63 64 sub id65 {66 my $self = shift;67 if (@_)68 {69 $self->{_id} = shift;70 }71 return $self->{_id};72 }73 74 67 75 68 … … 96 89 { 97 90 my $self = shift; 98 print "DELETE REQUEST ID=" . $self->{_id} . "\n";91 $self->SUPER::dump(); 99 92 print "\tDocument ID: " . $self->{_documentID} . "\n"; 100 93 } trunk/external-tools/indexer-backends/plucene/Midcom/Plucene/QueryRequest.pm
r430 r435 8 8 use warnings; 9 9 10 use Time::Piece;10 use Midcom::Plucene::BaseRequest; 11 11 use Plucene::Document::DateSerializer; 12 12 use Plucene::Search::DateFilter; 13 use Time::Piece; 14 15 16 @Midcom::Plucene::QueryRequest::ISA = ('Midcom::Plucene::BaseRequest'); 17 13 18 14 19 =head1 NAME … … 44 49 { 45 50 my $class = shift; 46 my $self = {};51 my $self = $class->SUPER::new(); 47 52 48 $self-> {_XMLComm} = shift;53 $self->type('query'); 49 54 $self->{_queryString} = undef; 50 55 $self->{_dateFilterField} = undef; 51 56 $self->{_dateFilterFrom} = undef; 52 57 $self->{_dateFilterTo} = undef; 53 $self->{_id} = undef;54 58 55 59 bless ($self, $class); 56 60 return $self; 57 }58 59 #########60 # Helpers61 62 # Parses an ISO-8601 (YYYY-MM-DDTHH:MM:SS) Timestamp to a Time::Piece63 64 sub dateFromString65 {66 my ($self, $arg) = @_;67 return Time::Piece->strptime($arg, "%Y-%m-%dT%H:%M:%S");68 61 } 69 62 … … 89 82 { 90 83 my $self = shift; 91 if (@_) 92 { 93 my $arg = shift; 94 if (UNIVERSAL::isa($arg, 'Time::Piece')) 95 { 96 $self->{_dateFilterFrom} = $arg; 97 } 98 else 99 { 100 $self->{_dateFilterFrom} = $self->dateFromString($arg); 101 } 102 } 84 if (@_) { $self->{_dateFilterFrom} = $self->mkDate(shift); } 103 85 return $self->{_dateFilterFrom}; 104 86 } … … 107 89 { 108 90 my $self = shift; 109 if (@_) 110 { 111 my $arg = shift; 112 if (UNIVERSAL::isa($arg, 'Time::Piece')) 113 { 114 $self->{_dateFilterTo} = $arg; 115 } 116 else 117 { 118 $self->{_dateFilterTo} = $self->dateFromString($arg); 119 } 120 } 91 if (@_) { $self->{_dateFilterFrom} = $self->mkDate(shift); } 121 92 return $self->{_dateFilterTo}; 122 93 } 123 124 sub id125 {126 my $self = shift;127 if (@_)128 {129 $self->{_id} = shift;130 }131 return $self->{_id};132 }133 134 94 135 95 … … 175 135 { 176 136 my $self = shift; 177 print "QUERY REQUEST ID=" . $self->{_id} . "\n"; 137 $self->SUPER::dump(); 138 178 139 print "\tQueryString: " . $self->{_queryString} . "\n"; 179 140 if ($self->{_dateFilterField})
