View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  package org.apache.maven.search.api;
20  
21  import org.apache.maven.search.api.request.Field.BooleanField;
22  import org.apache.maven.search.api.request.Field.NumberField;
23  import org.apache.maven.search.api.request.Field.StringField;
24  
25  /**
26   * The ontology of Apache Maven related fields.
27   */
28  public final class MAVEN {
29      private MAVEN() {
30          // no instances
31      }
32  
33      /**
34       * String field for artifact groupId. Searchable.
35       */
36      public static final StringField GROUP_ID = new StringField("groupId");
37  
38      /**
39       * String field for artifact artifactId. Searchable.
40       */
41      public static final StringField ARTIFACT_ID = new StringField("artifactId");
42  
43      /**
44       * String field for artifact version. Searchable.
45       */
46      public static final StringField VERSION = new StringField("version");
47  
48      /**
49       * String field for artifact classifier. Searchable.
50       */
51      public static final StringField CLASSIFIER = new StringField("classifier");
52  
53      /**
54       * String field for artifact packaging. Searchable.
55       */
56      public static final StringField PACKAGING = new StringField("packaging");
57  
58      /**
59       * String field for artifact contained Java class name. Searchable, but not present in resulting records.
60       */
61      public static final StringField CLASS_NAME = new StringField("cn");
62  
63      /**
64       * String field for artifact contained FQ Java class name. Searchable, but not present in resulting records.
65       */
66      public static final StringField FQ_CLASS_NAME = new StringField("fqcn");
67  
68      /**
69       * String field for artifact SHA1 checksum. Searchable, but not present in resulting records.
70       */
71      public static final StringField SHA1 = new StringField("sha1");
72  
73      /**
74       * String field for artifact file extension. Non-searchable. Indexer backend specific.
75       */
76      public static final StringField FILE_EXTENSION = new StringField("fileExtension");
77  
78      /**
79       * Number field carrying {@link Integer}, representing the count of versions for given GA. Non-searchable.
80       */
81      public static final NumberField VERSION_COUNT = new NumberField("versionCount");
82  
83      /**
84       * Boolean field representing the known presence/absence of artifact sources (is {@code -sources.jar} present).
85       * Non-searchable.
86       */
87      public static final BooleanField HAS_SOURCE = new BooleanField("source");
88  
89      /**
90       * Boolean field representing the known presence/absence of artifact Javadoc (is {@code -javadoc.jar} present).
91       * Non-searchable.
92       */
93      public static final BooleanField HAS_JAVADOC = new BooleanField("javadoc");
94  
95      /**
96       * Boolean field representing the known presence/absence of artifact GPG signature. Non-searchable. Indexer
97       * backend specific.
98       */
99      public static final BooleanField HAS_GPG_SIGNATURE = new BooleanField("gpg");
100 }