geoblacklight 1.0.0.pre1 → 1.0.0.pre2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5b0ad269f0ebd47db8d81ab0d4719f90fcbb8a17
4
- data.tar.gz: 1ad6c33856e8f7ce2551b19674f534085f52965a
3
+ metadata.gz: 3bcfdae95fc9d77f59fca94cb057b718bdf45570
4
+ data.tar.gz: 9fc80b4fe006b4ae6ccc6a5e7a3302b68219ac92
5
5
  SHA512:
6
- metadata.gz: 42059f7dd06f6a17c25f0bbc55b40b50899bd8af109f1480faca73e8818bd429be250d90579a8905fdfd830e0177ae5c9b15f3aba23704acc2da1495e1a14e1d
7
- data.tar.gz: 32743a287f05b96ca364713b6ad470b676fcb9822f5f285b38e7be9329302c4a980ef1676826c1b491f51e63a7156a8fc8952040f628747fece73ed3e7fd9e2a
6
+ metadata.gz: 808d31fb7c6ad514803cb467f95bb8fff70257980d9e04586843cafacf67be910fbadcf1b1b19901a8c688e231eab4a4699d839ba77d0dc9296aa2c2ba124f9c
7
+ data.tar.gz: 6e487c29f72344eccffc94fad3eeef8b43ab0c3411eeaf8479b3b80893b56ffe7566210709c04919861409ab70f519f51bcc1c0469c80d29c22e5597e7cb83fa
@@ -20,7 +20,7 @@
20
20
 
21
21
  var GeoBlacklight = L.Class.extend({
22
22
  statics: {
23
- __version__: '1.0.0.pre1',
23
+ __version__: '1.0.0.pre2',
24
24
 
25
25
  debounce: function(fn, delay) {
26
26
  var timeout = null;
@@ -47,14 +47,20 @@ GeoBlacklight.Viewer.Map = GeoBlacklight.Viewer.extend({
47
47
  },
48
48
 
49
49
  /**
50
- * Selects basemap if specified in data options, if not return mapquest
50
+ * Selects basemap if specified in data options, if not return positron.
51
51
  */
52
52
  selectBasemap: function() {
53
53
  var _this = this;
54
+ var basemap;
55
+
54
56
  if (_this.data.basemap) {
55
- return GeoBlacklight.Basemaps[_this.data.basemap];
57
+ basemap = GeoBlacklight.Basemaps[_this.data.basemap];
56
58
  } else {
57
- return _this.basemap.positron;
59
+ basemap = _this.basemap.positron;
58
60
  }
61
+
62
+ // Use value from app settings to set the detect retina option.
63
+ basemap.options.detectRetina = _this.detectRetina();
64
+ return basemap;
59
65
  }
60
66
  });
@@ -51,5 +51,17 @@ GeoBlacklight.Viewer = L.Class.extend({
51
51
  **/
52
52
  controlPreload: function() {
53
53
  return;
54
+ },
55
+
56
+ /**
57
+ * Gets the value of detect retina from application settings.
58
+ **/
59
+ detectRetina: function() {
60
+ var options = this.data.leafletOptions;
61
+ if (options && options.LAYERS) {
62
+ return options.LAYERS.DETECT_RETINA ? options.LAYERS.DETECT_RETINA : false;
63
+ } else {
64
+ return false;
65
+ }
54
66
  }
55
67
  });
@@ -17,6 +17,7 @@ GeoBlacklight.Viewer.Wms = GeoBlacklight.Viewer.Map.extend({
17
17
  },
18
18
 
19
19
  addPreviewLayer: function() {
20
+ var _this = this;
20
21
  var wmsLayer = L.tileLayer.wms(this.data.url, {
21
22
  layers: this.data.layerId,
22
23
  format: 'image/png',
@@ -24,7 +25,7 @@ GeoBlacklight.Viewer.Wms = GeoBlacklight.Viewer.Map.extend({
24
25
  tiled: true,
25
26
  CRS: 'EPSG:900913',
26
27
  opacity: this.options.opacity,
27
- detectRetina: true
28
+ detectRetina: _this.detectRetina()
28
29
  });
29
30
  this.overlay.addLayer(wmsLayer);
30
31
  this.setupInspection();
@@ -1,4 +1,4 @@
1
1
  <div id="documents" class="docView col-md-6">
2
2
  <%= render documents, :as => :document %>
3
3
  </div>
4
- <%= content_tag :div, '', id: 'map', data: { map: 'index', 'catalog-path'=> search_catalog_path , 'map-bbox' => params[:bbox], basemap: geoblacklight_basemap } %>
4
+ <%= content_tag :div, '', id: 'map', data: { map: 'index', 'catalog-path'=> search_catalog_path , 'map-bbox' => params[:bbox], basemap: geoblacklight_basemap, leaflet_options: leaflet_options } %>
@@ -43,7 +43,7 @@
43
43
  </div>
44
44
  <div class='col-md-6 text-center'>
45
45
  <%= content_tag :h3, t('geoblacklight.home.map_heading') %>
46
- <%= content_tag :div, '', id: 'map', data: { map: 'home', 'catalog-path'=> search_catalog_path , 'map-bbox' => params[:bbox], basemap: geoblacklight_basemap } %>
46
+ <%= content_tag :div, '', id: 'map', data: { map: 'home', 'catalog-path'=> search_catalog_path , 'map-bbox' => params[:bbox], basemap: geoblacklight_basemap, leaflet_options: leaflet_options } %>
47
47
  </div>
48
48
  </div>
49
49
  </div>
@@ -72,6 +72,7 @@ OPACITY_CONTROL: &opacity_control
72
72
  LEAFLET:
73
73
  MAP:
74
74
  LAYERS:
75
+ DETECT_RETINA: true
75
76
  VIEWERS:
76
77
  WMS:
77
78
  <<: *opacity_control
@@ -1,3 +1,3 @@
1
1
  module Geoblacklight
2
- VERSION = '1.0.0.pre1'.freeze
2
+ VERSION = '1.0.0.pre2'.freeze
3
3
  end
@@ -1,36 +1,27 @@
1
1
  require 'rails/generators'
2
2
  require 'generators/geoblacklight/install_generator'
3
3
  require 'geoblacklight'
4
- require 'open-uri'
4
+ require 'fileutils'
5
5
 
6
6
  namespace :geoblacklight do
7
- desc 'Copies the default SOLR config for the included Solr'
7
+ desc 'Configures Solr for local jetty instance'
8
8
  task :configure_solr do
9
- files_urls = [
9
+ root = Gem::Specification.find_by_name('geoblacklight').gem_dir rescue '.'
10
+ [
10
11
  {
11
- url: 'https://raw.githubusercontent.com/geoblacklight/geoblacklight-schema/v0.3.0/conf/schema.xml',
12
+ src: "schema/solr/conf/schema.xml",
12
13
  file: 'schema.xml'
13
14
  },
14
15
  {
15
- url: 'https://raw.githubusercontent.com/geoblacklight/geoblacklight-schema/v0.3.0/conf/solrconfig.xml',
16
+ src: "schema/solr/conf/solrconfig.xml",
16
17
  file: 'solrconfig.xml'
17
18
  }
18
- ]
19
- files_urls.each do |item|
20
- puts item.inspect
21
- begin
22
- open(item[:url]) do |io|
23
- IO.copy_stream(io, "jetty/solr/blacklight-core/conf/#{item[:file]}")
24
- end
25
- rescue Exception => e
26
- abort "Unable to download #{item[:file]} from #{item[:url]} #{e.message}"
27
- end
19
+ ].each do |item|
20
+ FileUtils.cp File.join(root, item[:src]), "jetty/solr/blacklight-core/conf/#{item[:file]}", verbose: true
28
21
  end
29
22
  end
30
23
 
31
24
  # Leaving this task in for backwards compatibility
32
25
  desc 'Runs geoblacklight:configure_solr, you should just use geoblacklight:configure_solr'
33
- task :configure_jetty do
34
- Rake::Task['geoblacklight:configure_solr'].invoke
35
- end
26
+ task configure_jetty: :configure_solr
36
27
  end
@@ -0,0 +1,31 @@
1
+ # GeoBlacklight-Schema
2
+
3
+ Table View
4
+
5
+ Properties | Type | Controlled Values | Description
6
+ ---------- | ---- | ------------ |-----------
7
+ **uuid** | string || Unique identifier for layer that is globally unique.
8
+ **dc\_identifier\_s** | string || Unique identifier for layer. May be same as UUID but may be an alternate identifier.
9
+ **dc\_title\_s** | string || Title for the layer.
10
+ **dc\_description\_s** | string || Description for the layer.
11
+ **dc\_rights\_s**| string | "Public", "Restricted" | Access rights for the layer.
12
+ **dct\_provenance\_s** | string || Institution who holds the layer.
13
+ **dct\_references\_s** | string || JSON hash for external resources, where each key is a URI for the protocol or format and the value is the URL to the resource.
14
+ **georss\_box\_s** | string || Bounding box as maximum values for S W N E. Example: 12.6 -119.4 19.9 84.8.
15
+ **layer\_id\_s** | string || The complete identifier for the layer via WMS/WFS/WCS protocol. Example: druid:vr593vj7147.
16
+ **layer\_geom\_type\_s** | string | "Point", "Line", "Polygon", "Raster", "Scanned Map", "Mixed" | Geometry type for layer data, using controlled vocabulary.
17
+ **layer\_modified\_dt** | string | date-time | Last modification date for the metadata record, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ).
18
+ **layer\_slug\_s** | string || Unique identifier visible to the user, used for Permalinks. Example: stanford-vr593vj7147.
19
+ **solr\_geom** | string | /ENVELOPE(.\*,.\*,.\*,.\*)/ | **Derived** from georss\_polygon\_s or georss\_box\_s. Shape of the layer as a ENVELOPE WKT using W E N S. Example: ENVELOPE(76.76, 84.76, 19.91, 12.62). Note that this field is indexed as a Solr spatial (RPT) field.
20
+ **solr\_year\_i** | integer || **Derived** from dct\_temporal\_sm. Year for which layer is valid and only a single value. Example: 1989. Note that this field is indexed as a Solr numeric field.
21
+ dc\_creator\_sm | multivalued string || Author(s). Example: George Washington, Thomas Jefferson.
22
+ dc\_format\_s | string | Shapefile, GeoTIFF, ArcGRID | File format for the layer, using a controlled vocabulary.
23
+ dc\_language\_s | string || Language for the layer. Example: English.
24
+ dc\_publisher\_s | string || Publisher. Example: ML InfoMap.
25
+ dc\_subject\_sm | multivalued string || Subjects, preferrably in a controlled vocabulary. Examples: Census, Human settlements.
26
+ dc\_type\_s | string | "Dataset", "Image", "PhysicalObject" | Resource type, using DCMI Type Vocabulary.
27
+ dct\_spatial\_sm | multivalued string || Spatial coverage and place names, perferrably in a controlled vocabulary. Example: "Paris, France".
28
+ dct\_temporal\_sm | multivalued string || Temporal coverage, typically years or dates. Example: 1989, circa 2010, 2007-2009. Note that this field is not in a specific date format.
29
+ dct\_issued\_dt | string | date-time | Issued date for the layer, using XML Schema dateTime format (YYYY-MM-DDThh:mm:ssZ).
30
+ dct\_isPartOf\_sm | multivalued string || Holding dataset for the layer, such as the name of a collection. Example: Village Maps of India.
31
+ georss\_point\_s | string || Point representation for layer as y, x - i.e., centroid. Example: 12.6 -119.4.
@@ -0,0 +1,158 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <schema name="geoblacklight-schema" version="1.5">
3
+ <uniqueKey>uuid</uniqueKey>
4
+ <fields>
5
+ <field name="_version_" type="long" stored="true" indexed="true"/>
6
+ <field name="timestamp" type="date" stored="true" indexed="true" default="NOW"/>
7
+ <field name="uuid" type="string" stored="true" indexed="true" required="true"/>
8
+
9
+ <!-- core generated fields -->
10
+ <field name="text" type="text_en" stored="false" indexed="true" multiValued="true"
11
+ termVectors="true" termPositions="true" termOffsets="true" />
12
+
13
+ <!-- dynamic field with simple types by suffix -->
14
+ <dynamicField name="*_b" type="boolean" stored="true" indexed="true"/>
15
+ <dynamicField name="*_d" type="double" stored="true" indexed="true"/>
16
+ <dynamicField name="*_dt" type="date" stored="true" indexed="true"/>
17
+ <dynamicField name="*_f" type="float" stored="true" indexed="true"/>
18
+ <dynamicField name="*_i" type="int" stored="true" indexed="true"/>
19
+ <dynamicField name="*_l" type="long" stored="true" indexed="true"/>
20
+ <dynamicField name="*_s" type="string" stored="true" indexed="true"/>
21
+ <dynamicField name="*_ss" type="string" stored="true" indexed="false"/>
22
+ <dynamicField name="*_si" type="string" stored="false" indexed="true"/>
23
+ <dynamicField name="*_sim" type="string" stored="false" indexed="true" multiValued="true" />
24
+ <dynamicField name="*_sm" type="string" stored="true" indexed="true" multiValued="true" />
25
+ <dynamicField name="*_url" type="string" stored="true" indexed="false"/>
26
+ <dynamicField name="*_blob" type="binary" stored="true" indexed="false"/>
27
+
28
+ <!-- dynamic Text fields by suffix without storage -->
29
+ <dynamicField name="*_t" type="text_en" stored="false" indexed="true"
30
+ termVectors="true" termPositions="true" termOffsets="true"/>
31
+ <dynamicField name="*_tm" type="text_en" stored="false" indexed="true" multiValued="true"
32
+ termVectors="true" termPositions="true" termOffsets="true"/>
33
+ <dynamicField name="*_ti" type="text_en" stored="false" indexed="true"
34
+ termVectors="true" termPositions="true" termOffsets="true"/>
35
+ <dynamicField name="*_tmi" type="text_en" stored="false" indexed="true" multiValued="true"
36
+ termVectors="true" termPositions="true" termOffsets="true"/>
37
+ <dynamicField name="*_sort" type="text_sort" stored="false" indexed="true" multiValued="false"/>
38
+
39
+ <!-- Spatial field types:
40
+
41
+ Solr3:
42
+ <field name="my_pt">83.1,-117.312</field>
43
+ as (y,x)
44
+
45
+ Solr4:
46
+
47
+ <field name="my_bbox">-117.312 83.1 -115.39 84.31</field>
48
+ as (W S E N)
49
+
50
+ <field name="my_geom">ENVELOPE(-117.312, -115.39, 84.31, 83.1)</field>
51
+ as (W E N S)
52
+
53
+ <field name="my_jts">POLYGON((1 8, 1 9, 2 9, 2 8, 1 8))</field>
54
+ as WKT for point, linestring, polygon
55
+
56
+ -->
57
+ <dynamicField name="*_pt" type="location" stored="true" indexed="true"/>
58
+ <dynamicField name="*_bbox" type="location_rpt" stored="true" indexed="true"/>
59
+ <dynamicField name="*_geom" type="location_rpt" stored="true" indexed="true"/>
60
+ <!-- <dynamicField name="*_jts" type="location_jts" stored="true" indexed="true"/> -->
61
+ </fields>
62
+
63
+ <types>
64
+ <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
65
+ <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true"/>
66
+
67
+ <fieldType name="int" class="solr.TrieIntField" precisionStep="8" positionIncrementGap="0"/>
68
+ <fieldType name="float" class="solr.TrieFloatField" precisionStep="8" positionIncrementGap="0"/>
69
+ <fieldType name="long" class="solr.TrieLongField" precisionStep="8" positionIncrementGap="0"/>
70
+ <fieldType name="double" class="solr.TrieDoubleField" precisionStep="8" positionIncrementGap="0"/>
71
+
72
+ <!-- The format for this date field is of the form 1995-12-31T23:59:59Z.
73
+ The trailing "Z" designates UTC time and is mandatory.
74
+ A Trie based date field for faster date range queries and date faceting. -->
75
+ <fieldType name="date" class="solr.TrieDateField" precisionStep="6" positionIncrementGap="0"/>
76
+
77
+ <!--Binary data type. The data should be sent/retrieved in as Base64 encoded Strings -->
78
+ <fieldtype name="binary" class="solr.BinaryField"/>
79
+
80
+ <!-- A text field with defaults appropriate for English: it
81
+ tokenizes with StandardTokenizer, removes English stop words
82
+ (lang/stopwords_en.txt), down cases, protects words from protwords.txt, and
83
+ finally applies Porter's stemming. The query time analyzer
84
+ also applies synonyms from synonyms.txt. -->
85
+ <fieldType name="text_en" class="solr.TextField" positionIncrementGap="100">
86
+ <analyzer type="index">
87
+ <tokenizer class="solr.StandardTokenizerFactory"/>
88
+ <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_en.txt"/>
89
+ <filter class="solr.LowerCaseFilterFactory"/>
90
+ <filter class="solr.EnglishPossessiveFilterFactory"/>
91
+ <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
92
+ <filter class="solr.PorterStemFilterFactory"/>
93
+ </analyzer>
94
+ <analyzer type="query">
95
+ <tokenizer class="solr.StandardTokenizerFactory"/>
96
+ <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
97
+ <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_en.txt"/>
98
+ <filter class="solr.LowerCaseFilterFactory"/>
99
+ <filter class="solr.EnglishPossessiveFilterFactory"/>
100
+ <filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt"/>
101
+ <filter class="solr.PorterStemFilterFactory"/>
102
+ </analyzer>
103
+ </fieldType>
104
+
105
+ <!-- for alpha sorting as a single token -->
106
+ <fieldType name="text_sort" class="solr.TextField" sortMissingLast="true" omitNorms="true">
107
+ <analyzer>
108
+ <tokenizer class="solr.KeywordTokenizerFactory"/>
109
+ <filter class="solr.LowerCaseFilterFactory" />
110
+ <filter class="solr.TrimFilterFactory" />
111
+ <filter class="solr.PatternReplaceFilterFactory" pattern="([^a-z0-9 ])" replacement="" replace="all"/>
112
+ </analyzer>
113
+ </fieldType>
114
+
115
+ <!-- Spatial field types -->
116
+ <fieldType name="location" class="solr.LatLonType" subFieldSuffix="_d"/>
117
+
118
+ <fieldType name="location_rpt" class="solr.SpatialRecursivePrefixTreeFieldType"
119
+ distErrPct="0.025"
120
+ maxDistErr="0.000009"
121
+ units="degrees"
122
+ />
123
+
124
+ <!-- JTS-enabled spatial predicates; requires JTS installation -->
125
+ <!-- <fieldType name="location_jts" class="solr.SpatialRecursivePrefixTreeFieldType"
126
+ spatialContextFactory="com.spatial4j.core.context.jts.JtsSpatialContextFactory"
127
+ distErrPct="0.025"
128
+ maxDistErr="0.000009"
129
+ units="degrees"
130
+ /> -->
131
+ </types>
132
+
133
+ <!-- for scoring formula -->
134
+ <copyField source="dct_spatial_sm" dest="dct_spatial_tmi" maxChars="10000"/>
135
+ <copyField source="dct_temporal_sm" dest="dct_temporal_tmi" maxChars="10000"/>
136
+ <copyField source="dc_creator_sm" dest="dc_creator_tmi" maxChars="1000"/>
137
+ <copyField source="dc_description_s" dest="dc_description_ti" maxChars="10000"/>
138
+ <copyField source="dc_format_s" dest="dc_format_ti" maxChars="100"/>
139
+ <copyField source="dc_identifier_s" dest="dc_identifier_ti" maxChars="100"/>
140
+ <copyField source="dc_publisher_s" dest="dc_publisher_ti" maxChars="1000"/>
141
+ <copyField source="dc_rights_s" dest="dc_rights_ti" maxChars="100"/>
142
+ <copyField source="dct_provenance_s" dest="dct_provenance_ti" maxChars="1000"/>
143
+ <copyField source="dc_subject_sm" dest="dc_subject_tmi" maxChars="10000"/>
144
+ <copyField source="dc_title_s" dest="dc_title_ti" maxChars="1000"/>
145
+ <copyField source="dct_isPartOf_sm" dest="dct_isPartOf_tmi" maxChars="1000"/>
146
+ <copyField source="layer_geom_type_s" dest="layer_geom_type_ti" maxChars="100"/>
147
+ <copyField source="layer_slug_s" dest="layer_slug_ti" maxChars="100"/>
148
+
149
+ <!-- core text search -->
150
+ <copyField source="*_ti" dest="text" />
151
+ <copyField source="*_tmi" dest="text" />
152
+
153
+ <!-- for sorting text fields -->
154
+ <copyField source="dct_provenance_s" dest="dct_provenance_sort"/>
155
+ <copyField source="dc_publisher_s" dest="dc_publisher_sort"/>
156
+ <copyField source="dc_title_s" dest="dc_title_sort"/>
157
+
158
+ </schema>
@@ -0,0 +1,180 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ Licensed to the Apache Software Foundation (ASF) under one or more
4
+ contributor license agreements. See the NOTICE file distributed with
5
+ this work for additional information regarding copyright ownership.
6
+ The ASF licenses this file to You under the Apache License, Version 2.0
7
+ (the "License"); you may not use this file except in compliance with
8
+ 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, software
13
+ distributed under the License is distributed on an "AS IS" BASIS,
14
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ See the License for the specific language governing permissions and
16
+ limitations under the License.
17
+ -->
18
+ <!--
19
+ For more details about configurations options that may appear in
20
+ this file, see http://wiki.apache.org/solr/SolrConfigXml.
21
+ -->
22
+ <config>
23
+ <luceneMatchVersion>4.7</luceneMatchVersion>
24
+ <dataDir>${solr.data.dir:}</dataDir>
25
+ <directoryFactory name="DirectoryFactory" class="${solr.directoryFactory:solr.NRTCachingDirectoryFactory}"/>
26
+ <codecFactory class="solr.SchemaCodecFactory"/>
27
+ <schemaFactory class="ClassicIndexSchemaFactory"/>
28
+ <indexConfig>
29
+ <lockType>${solr.lock.type:native}</lockType>
30
+ </indexConfig>
31
+
32
+ <!-- The default high-performance update handler -->
33
+ <updateHandler class="solr.DirectUpdateHandler2">
34
+ <updateLog>
35
+ <str name="dir">${solr.ulog.dir:}</str>
36
+ </updateLog>
37
+ <autoCommit>
38
+ <maxTime>15000</maxTime>
39
+ <openSearcher>false</openSearcher>
40
+ </autoCommit>
41
+ </updateHandler>
42
+
43
+ <!-- realtime get handler, guaranteed to return the latest stored fields
44
+ of any document, without the need to commit or open a new searcher. The current
45
+ implementation relies on the updateLog feature being enabled. -->
46
+ <requestHandler name="/get" class="solr.RealTimeGetHandler">
47
+ <lst name="defaults">
48
+ <str name="omitHeader">true</str>
49
+ </lst>
50
+ </requestHandler>
51
+
52
+ <requestHandler name="/replication" class="solr.ReplicationHandler" startup="lazy" />
53
+
54
+ <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55
+ Query section - these settings control query time things like caches
56
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
57
+ <query>
58
+ <maxBooleanClauses>1024</maxBooleanClauses>
59
+ <filterCache class="solr.FastLRUCache" size="512" initialSize="512" autowarmCount="0"/>
60
+ <queryResultCache class="solr.LRUCache" size="512" initialSize="512" autowarmCount="0"/>
61
+ <documentCache class="solr.LRUCache" size="512" initialSize="512" autowarmCount="0"/>
62
+ <enableLazyFieldLoading>true</enableLazyFieldLoading>
63
+ <queryResultWindowSize>20</queryResultWindowSize>
64
+ <queryResultMaxDocsCached>200</queryResultMaxDocsCached>
65
+ <listener event="newSearcher" class="solr.QuerySenderListener">
66
+ <arr name="queries">
67
+ <lst><str name="q">stanford</str></lst>
68
+ <lst><str name="q">polygon</str></lst>
69
+ </arr>
70
+ </listener>
71
+ <listener event="firstSearcher" class="solr.QuerySenderListener">
72
+ <arr name="queries">
73
+ <lst>
74
+ <str name="q">static firstSearcher warming in solrconfig.xml</str>
75
+ </lst>
76
+ </arr>
77
+ </listener>
78
+ <useColdSearcher>false</useColdSearcher>
79
+ <maxWarmingSearchers>2</maxWarmingSearchers>
80
+ </query>
81
+
82
+ <requestDispatcher handleSelect="false">
83
+ <requestParsers enableRemoteStreaming="true" multipartUploadLimitInKB="2048000" formdataUploadLimitInKB="2048"/>
84
+ <httpCaching never304="true"/>
85
+ </requestDispatcher>
86
+
87
+ <requestHandler name="/search" class="solr.SearchHandler"/>
88
+
89
+ <requestHandler name="/select" class="solr.SearchHandler">
90
+ <lst name="defaults">
91
+ <int name="start">0</int>
92
+ <int name="rows">10</int>
93
+ <str name="wt">json</str>
94
+ <int name="indent">2</int>
95
+ <str name="defType">edismax</str>
96
+ <str name="echoParams">all</str>
97
+ <str name="mm">6&lt;-1 6&lt;90%</str>
98
+ <int name="qs">1</int>
99
+ <int name="ps">0</int>
100
+ <float name="tie">0.01</float>
101
+ <str name="fl">*,score</str>
102
+ <str name="sort">score desc, dc_title_sort asc</str>
103
+ <str name="q.alt">*:*</str>
104
+ <str name="qf">
105
+ text^1
106
+ dc_description_ti^2
107
+ dc_creator_tmi^3
108
+ dc_publisher_ti^3
109
+ dct_isPartOf_tmi^4
110
+ dc_subject_tmi^5
111
+ dct_spatial_tmi^5
112
+ dct_temporal_tmi^5
113
+ dc_title_ti^6
114
+ dc_rights_ti^7
115
+ dct_provenance_ti^8
116
+ layer_geom_type_ti^9
117
+ layer_slug_ti^10
118
+ dc_identifier_ti^10
119
+ </str>
120
+ <str name="pf"><!-- phrase boost within result set -->
121
+ text^1
122
+ dc_description_ti^2
123
+ dc_creator_tmi^3
124
+ dc_publisher_ti^3
125
+ dct_isPartOf_tmi^4
126
+ dc_subject_tmi^5
127
+ dct_spatial_tmi^5
128
+ dct_temporal_tmi^5
129
+ dc_title_ti^6
130
+ dc_rights_ti^7
131
+ dct_provenance_ti^8
132
+ layer_geom_type_ti^9
133
+ layer_slug_ti^10
134
+ dc_identifier_ti^10
135
+ </str>
136
+ <bool name="facet">true</bool>
137
+ <int name="facet.mincount">1</int>
138
+ <int name="facet.limit">10</int>
139
+ <str name="facet.field">dct_isPartOf_sm</str>
140
+ <str name="facet.field">dct_provenance_s</str>
141
+ <str name="facet.field">dct_spatial_sm</str>
142
+ <str name="facet.field">dc_creator_sm</str>
143
+ <str name="facet.field">dc_format_s</str>
144
+ <str name="facet.field">dc_language_s</str>
145
+ <str name="facet.field">dc_publisher_s</str>
146
+ <str name="facet.field">dc_rights_s</str>
147
+ <str name="facet.field">dc_subject_sm</str>
148
+ <str name="facet.field">layer_geom_type_s</str>
149
+ <str name="facet.field">solr_year_i</str>
150
+ </lst>
151
+ </requestHandler>
152
+
153
+ <requestHandler name="/update" class="solr.UpdateRequestHandler"/>
154
+ <requestHandler name="/admin/" class="solr.admin.AdminHandlers"/>
155
+
156
+ <!-- ping/healthcheck -->
157
+ <requestHandler name="/admin/ping" class="solr.PingRequestHandler">
158
+ <lst name="invariants">
159
+ <str name="q">solrpingquery</str>
160
+ </lst>
161
+ <lst name="defaults">
162
+ <str name="echoParams">all</str>
163
+ </lst>
164
+ <!-- An optional feature of the PingRequestHandler is to configure the
165
+ handler with a "healthcheckFile" which can be used to enable/disable
166
+ the PingRequestHandler.
167
+ relative paths are resolved against the data dir
168
+ -->
169
+ <str name="healthcheckFile">server-enabled.txt</str>
170
+ </requestHandler>
171
+
172
+ <requestHandler name="/analysis/field"
173
+ startup="lazy"
174
+ class="solr.FieldAnalysisRequestHandler" />
175
+
176
+ <!-- Legacy config for the admin interface -->
177
+ <admin>
178
+ <defaultQuery>*:*</defaultQuery>
179
+ </admin>
180
+ </config>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geoblacklight
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre1
4
+ version: 1.0.0.pre2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Graves
@@ -380,6 +380,9 @@ files:
380
380
  - lib/geoblacklight/wms_layer/feature_info_response.rb
381
381
  - lib/tasks/configure_solr.rake
382
382
  - lib/tasks/geoblacklight.rake
383
+ - schema/geoblacklight-schema.md
384
+ - schema/solr/conf/schema.xml
385
+ - schema/solr/conf/solrconfig.xml
383
386
  - spec/controllers/catalog_controller_spec.rb
384
387
  - spec/controllers/download_controller_spec.rb
385
388
  - spec/factories/user.rb