Maven Indexer questions

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Maven Indexer questions

ljnelson
I am working with the maven-indexer componentry for the first time; please
forgive my ignorance.

I normally wouldn't ask these questions here, but there is no documentation.

Suppose I am writing an IndexCreator implementation that wants to look at
all the META-INF/MANIFEST.MF files reachable in a repository and create
fields for each header found in them.  (First off, is such dynamic field
creation even A Thing?  I am no kind of Lucene expert.)

(I'm looking to allow things like "find me artifacts that contain 'fred' in
their Class-Path manifest header" or any of a variety of other use cases
derivable from the ability to index properties-like files inside artifact
jars.)

What, in this case, should my IndexCreator return from its (undocumented)
getIndexerFields() method?  If it's called "up front", then of course I
can't return anything meaningful since I won't know the sum total of the
fields my IndexCreator will contribute until the end.  If it's not called
up front, then maybe I'm OK.  I don't actually see it being called in any
meaningful way at all, but I'm sure I'm missing something, which is why I
ask here.

Next, I noticed that IndexerField has a getVersion() method, and from
spelunking some more in the source base it seems like certain IndexCreators
effectively "bump up" this version, i.e. every time a new IndexCreator
comes up with new fields it does so with a new version.  That suggests that
perhaps I need to also get a constant added to IndexerFieldVersion, which
is an enum.  Can I just invent a version number here (I don't see this
method called anywhere in the source base) or must I use an existing one,
or…?

Lastly, I see that ArtifactInfo seems to have fields in it that correspond
loosely with the kinds of IndexCreators that exist (for example, it has a
classNames field, which to my naive eyes is filled in by the
JarFileContentsIndexCreator, suggesting that if you add a funky new
IndexCreator you are obliged to add new fields to ArtifactInfo, but that
coupling seems really wrong so I'm sure I'm missing something).  Is that
actually true?  Also, the class is marked as being "phased out", but seems
to be central to the notion of creating indices.  Is there an alternative I
should be using instead?

Thanks in advance for help with these baby steps.

Best,
Laird
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Maven Indexer questions

Hervé BOUTEMY
Le mercredi 29 mars 2017, 16:31:10 CEST Laird Nelson a écrit :
> I am working with the maven-indexer componentry for the first time; please
> forgive my ignorance.
>
> I normally wouldn't ask these questions here, but there is no documentation.
did you have a look at:
http://maven.apache.org/maven-indexer-archives/maven-indexer-LATEST/
http://maven.apache.org/maven-indexer-archives/maven-indexer-LATEST/indexer-core/index.html
?

I'm not a Lucene expert at all, and can't really give you better info,
sorry...

Regards,

Hervé

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Maven Indexer questions

ljnelson
On Thu, Mar 30, 2017 at 9:44 AM Hervé BOUTEMY <[hidden email]> wrote:

> Le mercredi 29 mars 2017, 16:31:10 CEST Laird Nelson a écrit :
> > I normally wouldn't ask these questions here, but there is no
> documentation.
> did you have a look at:
> http://maven.apache.org/maven-indexer-archives/maven-indexer-LATEST/
>
> http://maven.apache.org/maven-indexer-archives/maven-indexer-LATEST/indexer-core/index.html
> ?
>

No!  I was looking at http://maven.apache.org/maven-indexer/.

I've seen this pattern on the website before: sometimes there's something
under foo-bar, and other times it's under
foo-bar-archives/foo-bar-VERSION.  Is there a cheat sheet on when to look
where?

Thanks for the pointers,
Best,
Laird
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Maven Indexer questions

Hervé BOUTEMY
there is the documentation for component reference documentation publication:
http://maven.apache.org/developers/website/deploy-component-reference-documentation.html

but nothing for end-users: the developer doc is not easy to understand, but I
managed to write one. For end-users, I don't know how to write it to have a
chance someone will use it...

Regards,

Hervé

Le jeudi 30 mars 2017, 16:57:51 CEST Laird Nelson a écrit :

> On Thu, Mar 30, 2017 at 9:44 AM Hervé BOUTEMY <[hidden email]> wrote:
> > Le mercredi 29 mars 2017, 16:31:10 CEST Laird Nelson a écrit :
> > > I normally wouldn't ask these questions here, but there is no
> >
> > documentation.
> > did you have a look at:
> > http://maven.apache.org/maven-indexer-archives/maven-indexer-LATEST/
> >
> > http://maven.apache.org/maven-indexer-archives/maven-indexer-LATEST/indexe
> > r-core/index.html ?
>
> No!  I was looking at http://maven.apache.org/maven-indexer/.
>
> I've seen this pattern on the website before: sometimes there's something
> under foo-bar, and other times it's under
> foo-bar-archives/foo-bar-VERSION.  Is there a cheat sheet on when to look
> where?
>
> Thanks for the pointers,
> Best,
> Laird



---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Maven Indexer questions

Tamás Cservenák
In reply to this post by ljnelson
Hi Laird,

sadly, not possible right now:
https://issues.apache.org/jira/browse/MINDEXER-81

Lucene does handle "dynamically added" fields, but MI as it currently
stands does not.

On Wed, Mar 29, 2017 at 6:31 PM Laird Nelson <[hidden email]> wrote:

> I am working with the maven-indexer componentry for the first time; please
> forgive my ignorance.
>
> I normally wouldn't ask these questions here, but there is no
> documentation.
>
> Suppose I am writing an IndexCreator implementation that wants to look at
> all the META-INF/MANIFEST.MF files reachable in a repository and create
> fields for each header found in them.  (First off, is such dynamic field
> creation even A Thing?  I am no kind of Lucene expert.)
>
> (I'm looking to allow things like "find me artifacts that contain 'fred' in
> their Class-Path manifest header" or any of a variety of other use cases
> derivable from the ability to index properties-like files inside artifact
> jars.)
>
> What, in this case, should my IndexCreator return from its (undocumented)
> getIndexerFields() method?  If it's called "up front", then of course I
> can't return anything meaningful since I won't know the sum total of the
> fields my IndexCreator will contribute until the end.  If it's not called
> up front, then maybe I'm OK.  I don't actually see it being called in any
> meaningful way at all, but I'm sure I'm missing something, which is why I
> ask here.
>
> Next, I noticed that IndexerField has a getVersion() method, and from
> spelunking some more in the source base it seems like certain IndexCreators
> effectively "bump up" this version, i.e. every time a new IndexCreator
> comes up with new fields it does so with a new version.  That suggests that
> perhaps I need to also get a constant added to IndexerFieldVersion, which
> is an enum.  Can I just invent a version number here (I don't see this
> method called anywhere in the source base) or must I use an existing one,
> or…?
>
> Lastly, I see that ArtifactInfo seems to have fields in it that correspond
> loosely with the kinds of IndexCreators that exist (for example, it has a
> classNames field, which to my naive eyes is filled in by the
> JarFileContentsIndexCreator, suggesting that if you add a funky new
> IndexCreator you are obliged to add new fields to ArtifactInfo, but that
> coupling seems really wrong so I'm sure I'm missing something).  Is that
> actually true?  Also, the class is marked as being "phased out", but seems
> to be central to the notion of creating indices.  Is there an alternative I
> should be using instead?
>
> Thanks in advance for help with these baby steps.
>
> Best,
> Laird
>
--
Thanks,
~t~
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Maven Indexer questions

ljnelson
On Thu, Mar 30, 2017 at 2:34 PM Tamás Cservenák <[hidden email]> wrote:

> sadly, not possible right now:
> https://issues.apache.org/jira/browse/MINDEXER-81


Thank you; I've voted for the bug, watched it and added a comment:
https://issues.apache.org/jira/browse/MINDEXER-81?focusedCommentId=15949969&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15949969

Best,
Laird
Loading...