Details

    • New, Patch Available

    Description

      For my needs I've updated Lucene so that it uses Java 5 constructs. I know Java 5 migration had been planned for 2.1 someday in the past, but don't know when it is planned now. This patch against the trunk includes :

      • most obvious generics usage (there are tons of usages of sets, ... Those which are commonly used have been generified)
      • PriorityQueue generification
      • replacement of indexed for loops with for each constructs
      • removal of unnececessary unboxing

      The code is to my opinion much more readable with those features (you actually know what is stored in collections reading the code, without the need to lookup for field definitions everytime) and it simplifies many algorithms.

      Note that this patch also includes an interface for the Query class. This has been done for my company's needs for building custom Query classes which add some behaviour to the base Lucene queries. It prevents multiple unnnecessary casts. I know this introduction is not wanted by the team, but it really makes our developments easier to maintain. If you don't want to use this, replace all /Queriable/ calls with standard /Query/.

      Attachments

        1. instantiated_fieldable.patch
          4 kB
          Karl Wettin
        2. LUCENE-1257_analysis.patch
          8 kB
          Robert Muir
        3. LUCENE-1257_BooleanFilter_Generics.patch
          4 kB
          Karthik K
        4. LUCENE-1257_contrib_ant.patch
          2 kB
          Karthik K
        5. LUCENE-1257_contrib_benchmark_2.patch
          22 kB
          Karthik K
        6. LUCENE-1257_contrib_benchmark.patch
          56 kB
          Karthik K
        7. LUCENE-1257_contrib_highlighting.patch
          26 kB
          Karthik K
        8. LUCENE-1257_contrib_memory.patch
          26 kB
          Karthik K
        9. LUCENE-1257_contrib_misc.patch
          18 kB
          Karthik K
        10. LUCENE-1257_contrib_smartcn.patch
          15 kB
          Robert Muir
        11. LUCENE-1257_heavy.patch
          69 kB
          Uwe Schindler
        12. LUCENE-1257_heavy.patch
          59 kB
          Robert Muir
        13. LUCENE-1257_javacc_upgrade.patch
          0.8 kB
          Karthik K
        14. LUCENE-1257_lucil.patch
          11 kB
          Simon Willnauer
        15. LUCENE-1257_lucli.patch
          8 kB
          Karthik K
        16. LUCENE-1257_messages.patch
          19 kB
          Robert Muir
        17. LUCENE-1257_more_unnecessary_casts.patch
          3 kB
          Karthik K
        18. LUCENE-1257_MultiFieldQueryParser.patch
          3 kB
          Karthik K
        19. LUCENE-1257_o_a_l_demo.patch
          1 kB
          Karthik K
        20. LUCENE-1257_o_a_l_index_test.patch
          55 kB
          Karthik K
        21. LUCENE-1257_o_a_l_index_test.patch
          55 kB
          Karthik K
        22. LUCENE-1257_o_a_l_search_spans.patch
          16 kB
          Karthik K
        23. LUCENE-1257_o_a_l_search.patch
          28 kB
          Karthik K
        24. LUCENE-1257_o.a.l.queryParser.patch
          8 kB
          Karthik K
        25. LUCENE-1257_o.a.l.store.patch
          12 kB
          Karthik K
        26. LUCENE-1257_org_apache_lucene_index.patch
          59 kB
          Uwe Schindler
        27. LUCENE-1257_org_apache_lucene_index.patch
          58 kB
          Karthik K
        28. LUCENE-1257_precendence_parser.patch
          9 kB
          Karthik K
        29. LUCENE-1257_queryParser_jj.patch
          6 kB
          Karthik K
        30. LUCENE-1257_swing_wikipedia_wordnet_xmlqp.patch
          24 kB
          Robert Muir
        31. LUCENE-1257_unnecessary_casts.patch
          21 kB
          Karthik K
        32. LUCENE-1257_unnnecessary_casts_2.patch
          22 kB
          Karthik K
        33. LUCENE-1257-BooleanQuery.patch
          5 kB
          Karthik K
        34. LUCENE-1257-BooleanScorer_2.patch
          4 kB
          Karthik K
        35. LUCENE-1257-BufferedDeletes_DocumentsWriter.patch
          5 kB
          Karthik K
        36. LUCENE-1257-CheckIndex.patch
          6 kB
          Karthik K
        37. LUCENE-1257-CloseableThreadLocal.patch
          4 kB
          Karthik K
        38. LUCENE-1257-CompoundFileReaderWriter.patch
          3 kB
          Karthik K
        39. LUCENE-1257-ConcurrentMergeScheduler.patch
          2 kB
          Karthik K
        40. LUCENE-1257-DirectoryReader.patch
          8 kB
          Karthik K
        41. LUCENE-1257-DisjunctionMaxQuery-more_type_safety.patch
          2 kB
          Karthik K
        42. LUCENE-1257-DocFieldProcessorPerThread.patch
          4 kB
          Karthik K
        43. LUCENE-1257-Document.patch
          5 kB
          Uwe Schindler
        44. LUCENE-1257-FieldCacheImpl.patch
          8 kB
          Karthik K
        45. LUCENE-1257-FieldCacheRangeFilter.patch
          16 kB
          Uwe Schindler
        46. LUCENE-1257-IndexDeleter.patch
          13 kB
          Karthik K
        47. LUCENE-1257-IndexDeletionPolicy_IndexFileDeleter.patch
          5 kB
          Karthik K
        48. LUCENE-1257-iw.patch
          19 kB
          Karthik K
        49. LUCENE-1257-MTQWF.patch
          5 kB
          Uwe Schindler
        50. LUCENE-1257-NormalizeCharMap.patch
          1 kB
          Karthik K
        51. LUCENE-1257-o.a.l.util.patch
          10 kB
          Karthik K
        52. LUCENE-1257-org_apache_lucene_document.patch
          29 kB
          Karthik K
        53. LUCENE-1257-org_apache_lucene_document.patch
          29 kB
          Uwe Schindler
        54. LUCENE-1257-org_apache_lucene_document.patch
          24 kB
          Karthik K
        55. LUCENE-1257-SegmentInfos.patch
          6 kB
          Karthik K
        56. LUCENE-1257-StringBuffer.patch
          101 kB
          Uwe Schindler
        57. LUCENE-1257-StringBuffer.patch
          100 kB
          Uwe Schindler
        58. LUCENE-1257-StringBuffer.patch
          134 kB
          Uwe Schindler
        59. lucene1257surround1.patch
          7 kB
          Uwe Schindler
        60. lucene1257surround1.patch
          6 kB
          Paul Elschot
        61. LUCENE-1257-TopDocsCollector.patch
          8 kB
          Karthik K
        62. LUCENE-1257-WordListLoader.patch
          3 kB
          Karthik K
        63. shinglematrixfilter_generified.patch
          12 kB
          Karl Wettin

        Issue Links

          Activity

            People

              uschindler Uwe Schindler
              melix Cédric Champeau
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Slack

                  Issue deployment