solrbee 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -1
  3. data/Makefile +1 -6
  4. data/README.md +1 -11
  5. data/config/api.yml +22 -45
  6. data/lib/rom/solr.rb +40 -11
  7. data/lib/{solrbee → rom/solr}/array.rb +0 -0
  8. data/lib/rom/solr/commands.rb +17 -0
  9. data/lib/rom/solr/commands/create_documents.rb +15 -0
  10. data/lib/rom/solr/commands/delete_documents.rb +15 -0
  11. data/lib/rom/solr/commands/delete_documents_by_query.rb +15 -0
  12. data/lib/rom/solr/commands/update_documents.rb +15 -0
  13. data/lib/rom/solr/dataset.rb +33 -54
  14. data/lib/rom/solr/document_repo.rb +33 -0
  15. data/lib/rom/solr/documents_dataset.rb +12 -0
  16. data/lib/rom/solr/gateway.rb +2 -13
  17. data/lib/rom/solr/relation.rb +22 -8
  18. data/lib/rom/solr/relations/documents_relation.rb +160 -0
  19. data/lib/rom/solr/relations/schema_info_relation.rb +100 -0
  20. data/lib/rom/solr/repository.rb +9 -0
  21. data/lib/rom/solr/request_handler.rb +52 -0
  22. data/lib/rom/solr/{response.rb → response_handler.rb} +2 -2
  23. data/lib/rom/solr/schema.rb +1 -3
  24. data/lib/rom/solr/schema_info_dataset.rb +11 -0
  25. data/lib/rom/solr/schema_info_repo.rb +45 -0
  26. data/lib/rom/solr/select_cursor.rb +56 -0
  27. data/lib/solrbee.rb +12 -23
  28. data/lib/solrbee/version.rb +1 -1
  29. data/solrbee.gemspec +0 -1
  30. data/test.sh +14 -0
  31. metadata +19 -24
  32. data/lib/rom/solr/datasets/select_dataset.rb +0 -53
  33. data/lib/rom/solr/paginated_dataset.rb +0 -62
  34. data/lib/rom/solr/relations/schema_relation.rb +0 -75
  35. data/lib/rom/solr/relations/select_relation.rb +0 -43
  36. data/lib/rom/solr/request.rb +0 -24
  37. data/lib/rom/solr/schemaless.rb +0 -24
@@ -1,24 +0,0 @@
1
- module ROM
2
- module Solr
3
- class Request
4
-
5
- def self.call(dataset)
6
- uri = URI(dataset.uri)
7
- uri.query = URI.encode_www_form(dataset.params)
8
-
9
- http = Net::HTTP.new(uri.host, uri.port)
10
- http.use_ssl = true if uri.scheme.eql?('https')
11
-
12
- request_class = Net::HTTP.const_get(ROM::Inflector.classify(dataset.request_method))
13
- request = request_class.new(uri.request_uri)
14
-
15
- dataset.headers.each_with_object(request) do |(header, value), request|
16
- request[header.to_s] = value
17
- end
18
-
19
- http.request(request)
20
- end
21
-
22
- end
23
- end
24
- end
@@ -1,24 +0,0 @@
1
- require "hashie"
2
-
3
- module ROM
4
- module Solr
5
- module Schemaless
6
-
7
- def self.extended(base)
8
- schemaless_output = Class.new(Hashie::Mash) do
9
- include Hashie::Extensions::Mash::SymbolizeKeys
10
- disable_warnings
11
- end
12
- base.const_set(:SchemalessOutput, schemaless_output)
13
- base.option :output_schema, default: ->{ self.class.const_get(:SchemalessOutput) }
14
- end
15
-
16
- def schemaless(*args)
17
- schema(*args) do
18
- # no schema :)
19
- end
20
- end
21
-
22
- end
23
- end
24
- end