Skip to content

Commit f90f707

Browse files
committed
add support for elastic v6
1 parent 0d7d392 commit f90f707

File tree

72 files changed

+5948
-618
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+5948
-618
lines changed

build.sbt

Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,118 @@ lazy val persistence = project.in(file("persistence"))
9696
core % "compile->compile;test->test;it->it"
9797
)
9898

99+
lazy val es6bridge = project.in(file("es6/sql-bridge"))
100+
.configs(IntegrationTest)
101+
.settings(
102+
Defaults.itSettings,
103+
moduleSettings,
104+
elasticSearchVersion := Versions.es6,
105+
)
106+
.dependsOn(
107+
sql % "compile->compile;test->test;it->it"
108+
)
109+
110+
lazy val es6rest = project.in(file("es6/rest"))
111+
.configs(IntegrationTest)
112+
.settings(
113+
Defaults.itSettings,
114+
moduleSettings,
115+
elasticSearchVersion := Versions.es6,
116+
)
117+
.dependsOn(
118+
core % "compile->compile;test->test;it->it"
119+
)
120+
.dependsOn(
121+
es6bridge % "compile->compile;test->test;it->it"
122+
)
123+
124+
lazy val es6restp = project.in(file("es6/rest/persistence"))
125+
.configs(IntegrationTest)
126+
.settings(
127+
Defaults.itSettings,
128+
moduleSettings,
129+
elasticSearchVersion := Versions.es6,
130+
)
131+
.dependsOn(
132+
persistence % "compile->compile;test->test;it->it"
133+
)
134+
.dependsOn(
135+
es6rest % "compile->compile;test->test;it->it"
136+
)
137+
138+
lazy val es6jest = project.in(file("es6/jest"))
139+
.configs(IntegrationTest)
140+
.settings(
141+
Defaults.itSettings,
142+
moduleSettings,
143+
elasticSearchVersion := Versions.es6,
144+
)
145+
.dependsOn(
146+
core % "compile->compile;test->test;it->it"
147+
)
148+
.dependsOn(
149+
es6bridge % "compile->compile;test->test;it->it"
150+
)
151+
152+
lazy val es6jestp = project.in(file("es6/jest/persistence"))
153+
.configs(IntegrationTest)
154+
.settings(
155+
Defaults.itSettings,
156+
moduleSettings,
157+
elasticSearchVersion := Versions.es6,
158+
)
159+
.dependsOn(
160+
persistence % "compile->compile;test->test;it->it"
161+
)
162+
.dependsOn(
163+
es6jest % "compile->compile;test->test;it->it"
164+
)
165+
166+
lazy val es6testkit = project.in(file("es6/testkit"))
167+
.configs(IntegrationTest)
168+
.settings(
169+
Defaults.itSettings,
170+
app.softnetwork.Info.infoSettings,
171+
moduleSettings,
172+
elasticSearchVersion := Versions.es6,
173+
buildInfoKeys += BuildInfoKey("elasticVersion" -> elasticSearchVersion.value)
174+
)
175+
.enablePlugins(BuildInfoPlugin)
176+
.dependsOn(
177+
es6restp % "compile->compile;test->test;it->it"
178+
)
179+
.dependsOn(
180+
es6jestp % "compile->compile;test->test;it->it"
181+
)
182+
183+
lazy val es6 = project.in(file("es6"))
184+
.configs(IntegrationTest)
185+
.settings(
186+
Defaults.itSettings,
187+
Publish.noPublishSettings,
188+
crossScalaVersions := Nil,
189+
elasticSearchVersion := Versions.es6
190+
)
191+
.aggregate(
192+
es6bridge,
193+
es6rest,
194+
es6restp,
195+
es6jest,
196+
es6jestp,
197+
es6testkit
198+
)
199+
200+
lazy val es7bridge = project.in(file("sql/bridge"))
201+
.configs(IntegrationTest)
202+
.settings(
203+
Defaults.itSettings,
204+
moduleSettings,
205+
elasticSearchVersion := Versions.es7,
206+
)
207+
.dependsOn(
208+
sql % "compile->compile;test->test;it->it"
209+
)
210+
99211
lazy val es7rest = project.in(file("es7/rest"))
100212
.configs(IntegrationTest)
101213
.settings(
@@ -106,6 +218,9 @@ lazy val es7rest = project.in(file("es7/rest"))
106218
.dependsOn(
107219
core % "compile->compile;test->test;it->it"
108220
)
221+
.dependsOn(
222+
es7bridge % "compile->compile;test->test;it->it"
223+
)
109224

110225
lazy val es7restp = project.in(file("es7/rest/persistence"))
111226
.configs(IntegrationTest)
@@ -144,11 +259,23 @@ lazy val es7 = project.in(file("es7"))
144259
elasticSearchVersion := Versions.es7
145260
)
146261
.aggregate(
262+
es7bridge,
147263
es7rest,
148264
es7restp,
149265
es7testkit
150266
)
151267

268+
lazy val es8bridge = project.in(file("sql/bridge"))
269+
.configs(IntegrationTest)
270+
.settings(
271+
Defaults.itSettings,
272+
moduleSettings,
273+
elasticSearchVersion := Versions.es8,
274+
)
275+
.dependsOn(
276+
sql % "compile->compile;test->test;it->it"
277+
)
278+
152279
lazy val es8java = project.in(file("es8/java"))
153280
.configs(IntegrationTest)
154281
.settings(
@@ -159,6 +286,9 @@ lazy val es8java = project.in(file("es8/java"))
159286
.dependsOn(
160287
core % "compile->compile;test->test;it->it"
161288
)
289+
.dependsOn(
290+
es8bridge % "compile->compile;test->test;it->it"
291+
)
162292

163293
lazy val es8javap = project.in(file("es8/java/persistence"))
164294
.configs(IntegrationTest)
@@ -197,11 +327,26 @@ lazy val es8 = project.in(file("es8"))
197327
elasticSearchVersion := Versions.es8
198328
)
199329
.aggregate(
330+
es8bridge,
200331
es8java,
201332
es8javap,
202333
es8testkit
203334
)
204335

336+
lazy val es9bridge = project.in(file("sql/bridge"))
337+
.configs(IntegrationTest)
338+
.settings(
339+
Defaults.itSettings,
340+
moduleSettings,
341+
scalaVersion := scala213,
342+
crossScalaVersions := Seq(scala213),
343+
elasticSearchVersion := Versions.es9,
344+
javacOptions ++= Seq("-source", "17", "-target", "17")
345+
)
346+
.dependsOn(
347+
sql % "compile->compile;test->test;it->it"
348+
)
349+
205350
lazy val es9java = project.in(file("es9/java"))
206351
.configs(IntegrationTest)
207352
.settings(
@@ -215,6 +360,9 @@ lazy val es9java = project.in(file("es9/java"))
215360
.dependsOn(
216361
core % "compile->compile;test->test;it->it"
217362
)
363+
.dependsOn(
364+
es9bridge % "compile->compile;test->test;it->it"
365+
)
218366

219367
lazy val es9javap = project.in(file("es9/java/persistence"))
220368
.configs(IntegrationTest)
@@ -259,6 +407,7 @@ lazy val es9 = project.in(file("es9"))
259407
elasticSearchVersion := Versions.es9
260408
)
261409
.aggregate(
410+
es9bridge,
262411
es9java,
263412
es9javap,
264413
es9testkit

core/src/main/scala/app/softnetwork/elastic/client/ElasticClientApi.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import app.softnetwork.serialization._
1111
import app.softnetwork.elastic.sql.{SQLQuery, SQLSearchRequest}
1212
import com.google.gson.JsonParser
1313
import com.typesafe.config.{Config, ConfigFactory}
14-
import com.typesafe.scalalogging.StrictLogging
1514
import org.json4s.{DefaultFormats, Formats}
1615
import org.json4s.jackson.JsonMethods._
16+
import org.slf4j.Logger
1717

1818
import java.util.UUID
1919
import scala.concurrent.{Await, ExecutionContext, Future}
@@ -221,7 +221,9 @@ trait SettingsApi { _: IndicesApi =>
221221
def loadSettings(index: String): String
222222
}
223223

224-
trait MappingApi extends IndicesApi with RefreshApi with StrictLogging {
224+
trait MappingApi extends IndicesApi with RefreshApi {
225+
226+
protected def logger: Logger
225227

226228
/** Set the mapping of an index.
227229
* @param index

core/src/main/scala/app/softnetwork/elastic/client/package.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@ import app.softnetwork.elastic.client.BulkAction.BulkAction
66
import app.softnetwork.serialization._
77
import com.google.gson.{Gson, JsonElement, JsonObject}
88
import com.typesafe.config.{Config, ConfigFactory}
9-
import com.typesafe.scalalogging.{Logger, StrictLogging}
9+
import com.typesafe.scalalogging.StrictLogging
1010
import configs.ConfigReader
1111
import org.json4s.Formats
12+
import org.slf4j.Logger
1213

1314
import scala.collection.immutable.Seq
1415
import scala.collection.mutable

es6/build.sbt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import SoftClient4es.*
2+
organization := "app.softnetwork.elastic"
3+
name := s"softclient4es${elasticSearchMajorVersion(elasticSearchVersion.value)}"
4+
publish / skip := true
5+
Compile / sources := Nil
6+
Test / sources := Nil
7+

es6/jest/build.sbt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import SoftClient4es.*
2+
3+
organization := "app.softnetwork.elastic"
4+
5+
name := s"softclient4es${elasticSearchMajorVersion(elasticSearchVersion.value)}-jest-client"
6+
7+
libraryDependencies ++= jestClientDependencies(elasticSearchVersion.value) ++
8+
elastic4sDependencies(elasticSearchVersion.value)

es6/jest/persistence/build.sbt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import SoftClient4es.{elasticSearchMajorVersion, elasticSearchVersion}
2+
3+
organization := "app.softnetwork.elastic"
4+
5+
name := s"softclient4es${elasticSearchMajorVersion(elasticSearchVersion.value)}-jest-persistence"
6+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package app.softnetwork.persistence.query
2+
3+
import app.softnetwork.elastic.client.jest.JestClientApi
4+
import app.softnetwork.elastic.persistence.query.ElasticProvider
5+
import app.softnetwork.persistence.ManifestWrapper
6+
import app.softnetwork.persistence.model.Timestamped
7+
8+
/** Created by smanciot on 20/05/2021.
9+
*/
10+
trait JestProvider[T <: Timestamped] extends ElasticProvider[T] with JestClientApi {
11+
_: ManifestWrapper[T] =>
12+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package app.softnetwork.persistence.query
2+
3+
import app.softnetwork.elastic.persistence.query.State2ElasticProcessorStream
4+
import app.softnetwork.persistence.message.CrudEvent
5+
import app.softnetwork.persistence.model.Timestamped
6+
7+
trait State2ElasticProcessorStreamWithJestProvider[T <: Timestamped, E <: CrudEvent]
8+
extends State2ElasticProcessorStream[T, E]
9+
with JestProvider[T] { _: JournalProvider with OffsetProvider => }

0 commit comments

Comments
 (0)