Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/emm #1516

Merged
merged 23 commits into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from 22 commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
349ef2a
First attempt at getting paged EMM data, not complete.
jannistsiroyannis Oct 30, 2024
2807edd
Progress.
jannistsiroyannis Oct 31, 2024
782f0cb
Starting to look a little like EMM.
jannistsiroyannis Oct 31, 2024
087ae95
Add a missing file.
jannistsiroyannis Oct 31, 2024
2cfae28
Fix DB index usage.
jannistsiroyannis Oct 31, 2024
dfc0c8c
Add the entry point response.
jannistsiroyannis Nov 1, 2024
73f48b9
Work in progress, dumps
jannistsiroyannis Nov 4, 2024
48b7b3f
Read dumps, but don't send em yet.
jannistsiroyannis Nov 5, 2024
6c99a10
Looks like somewhat working dumps
jannistsiroyannis Nov 5, 2024
675055e
No categories for feed.
jannistsiroyannis Nov 11, 2024
bd5882e
Add a few basic dump categories.
jannistsiroyannis Nov 11, 2024
ae381e5
Embedd instances when dumping itemAndInstance-categories.
jannistsiroyannis Nov 11, 2024
db0280c
Type categories for EMM-dumps.
jannistsiroyannis Nov 13, 2024
b72529d
Add dump IDs
jannistsiroyannis Nov 13, 2024
2d81979
Beginnings of an EMM client.
jannistsiroyannis Nov 18, 2024
71b40b7
emm client, write changes on update.
jannistsiroyannis Nov 19, 2024
702d9a5
embellish in emm client
jannistsiroyannis Nov 19, 2024
9b08017
somewhat working emm client.
jannistsiroyannis Nov 19, 2024
c1d9b18
Do a little cleanup of the EMM client.
jannistsiroyannis Nov 19, 2024
cda8b8f
Fix EMM client embellish.
jannistsiroyannis Nov 20, 2024
b087eb9
Add create/delete handling in EMM client.
jannistsiroyannis Nov 20, 2024
3ea4abe
Remove temporary hack from EMM client.
jannistsiroyannis Nov 20, 2024
43c8e31
Minor EMM cleanups.
jannistsiroyannis Nov 21, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 73 additions & 0 deletions emm/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
apply plugin: 'java-library'
apply plugin: 'com.github.johnrengelman.shadow'

def mainClassName = "whelk.EmmServer"

repositories {
mavenCentral()
}

// Don't blame me for this TRAVESTY. It is a necessity because of the versioning of xml-apis (2.0.2 which gradle otherwise chooses is OLDER (and broken) despite the version.)
configurations.all {
resolutionStrategy {
force "xml-apis:xml-apis:1.4.01"
}
}

dependencies {
// XL dependencies
implementation(project(':whelk-core'))
implementation(project(':server-common'))

// Servlet
api "jakarta.servlet:jakarta.servlet-api:${servletApiVersion}"
implementation "org.eclipse.jetty:jetty-server:${jettyVersion}"
implementation "org.eclipse.jetty.ee8:jetty-ee8-servlet:${jettyVersion}"

// Logging
implementation group: 'org.apache.logging.log4j', name: 'log4j-api', version: "${log4jVersion}"
implementation group: 'org.apache.logging.log4j', name: 'log4j-core', version: "${log4jVersion}"

// metrics
implementation "io.prometheus:simpleclient:${prometheusVersion}"
implementation "io.prometheus:simpleclient_servlet:${prometheusVersion}"
}

shadowJar {
archiveClassifier = null // removes `-all` in the filename of the created .jar
}

jar {
dependsOn ':server-common:jar'
dependsOn(shadowJar)

manifest {
attributes "Main-Class": mainClassName,
// log4j uses multi-release to ship different stack walking implementations for different java
// versions. Since we repackage everything as a fat jar, that jar must also be multi-release.
"Multi-Release": true
}

archiveClassifier = "nonfat"
enabled = false
}

task(appRun, dependsOn: "classes", type: JavaExec) {
classpath = sourceSets.test.runtimeClasspath
mainClass = mainClassName
minHeapSize = "1g"
maxHeapSize = "4g"
systemProperties(
'xl.secret.properties': System.getProperty("xl.secret.properties"),
'xl.logRoot': System.getProperty("xl.logRoot", "./logs"),
'xl.http.port': System.getProperty("xl.http.port", "8182")
)
args(System.getProperty("args", "").split() as String[])

debugOptions {
enabled = true
port = 6007
server = true
suspend = false
}
}
Loading
Loading