solrbee 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
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