diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 0000000..e89d864
Binary files /dev/null and b/.DS_Store differ
diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..845ce93
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,9 @@
+@Library('dh_jenkins@develop')
+import io.deephaven.jenkins.DeephavenPipeline
+import io.deephaven.jenkins.settings.BuildRepo
+DeephavenPipeline.builder(this, steps, 'build-reporting-plugin')
+ .withEnv([ DH_CACHING: 'false' ])
+ .withBuildRepo(BuildRepo.plugin)
+ .withGradle('Build and Publish', 'publishAllPublicationsToCustomerRepository', false)
+ .withBuildImage('dh-ci-rocky8-v12')
+ .build()
diff --git a/build.gradle b/build.gradle
index 6634669..570d4de 100644
--- a/build.gradle
+++ b/build.gradle
@@ -11,7 +11,7 @@ buildscript {
url new URI('https://illumon.jfrog.io/illumon/plugin-tools')
}
dependencies {
- classpath 'io.deephaven.gradle:plugins:1.20200123.006'
+ classpath 'io.deephaven.gradle:plugins:1.20201022.033'
}
}
}
@@ -20,9 +20,12 @@ plugins {
id 'java-library'
id 'groovy'
id 'idea'
+ id 'maven-publish'
id 'com.diffplug.gradle.spotless' version '4.1.0'
}
+evaluationDependsOn(':reporting-tools')
+
apply plugin: 'io.deephaven.plugins'
java {
@@ -43,22 +46,26 @@ group = project.property('pluginGroup')
version = project.property('pluginVersion')
repositories {
- jcenter()
+ mavenCentral()
}
configurations {
global
- local
- client
- auth
}
+// this is only "safe" because we used evaluationDependsOn() at the top of this file.
+TaskProvider> shadowJar = project(":reporting-tools").tasks.named('shadowJar')
+
dependencies {
- api Deps.iris('DB')
- api Deps.iris('Plot')
- api 'org.apache.commons:commons-email:1.4'
+ api(Deps.iris('DB')) {
+ exclude group: 'org.apache.commons'
+ }
+ api(Deps.iris('Plot')) {
+ exclude group: 'org.apache.commons'
+ }
- global 'com.slack.api:slack-api-client:1.0.7'
+ // add our dependencies on commons-email and slack api via a shadow jar, to avoid package conflicts
+ global provider({shadowJar.get().outputs.files})
annotationProcessor 'org.immutables:value:2.8.8'
compileOnly 'org.immutables:value-annotations:2.8.8'
@@ -76,10 +83,14 @@ tasks.withType(JavaCompile) {
// https://github.com/immutables/immutables/issues/672
options.compilerArgs.add('-Xlint:-processing')
options.compilerArgs.add('-Werror')
+ dependsOn shadowJar
}
test {
useJUnitPlatform()
+ testLogging {
+ exceptionFormat = 'full'
+ }
}
wrapper {
@@ -113,4 +124,37 @@ spotless {
//}
}
-check.dependsOn(':spotlessCheck')
\ No newline at end of file
+check.dependsOn(':spotlessCheck')
+
+group 'io.deephaven.reporting.plugin'
+// using bard versioning b/c building for a bard customer. Need to cut jackson and then sanluis updates w/ newer plugin tools / gradle version
+version '1.20211129.002'
+sourceCompatibility = 1.8
+
+gradle.projectsEvaluated {
+ publishing {
+ publications {
+ pluginDeploy(MavenPublication) {
+ groupId = 'io.deephaven.plugins'
+ artifactId = 'report-generation-plugin'
+ from(components.java)
+ artifact(tasks['makeReport-generationRpm']) {
+ extension = 'rpm'
+ }
+ artifact(tasks['makeReport-generationTar']) {
+ extension = 'tgz'
+ }
+ }
+ }
+ repositories {
+ maven {
+ credentials {
+ username = findProperty('artifactoryUser') ?: System.getProperty('user.name')
+ password = findProperty('artifactoryAPIKey') ?: ''
+ }
+ url "https://illumon.jfrog.io/illumon/libs-plugin-customer"
+ name "customer"
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/gradle.properties b/gradle.properties
index 88e3083..e6ba1d8 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,5 +1,5 @@
-pluginVersion=0.3.0
+pluginVersion=1.20211129.002
pluginGroup=io.deephaven.plugins
libSource=libs-local
-irisVersion=1.20200331.132
+irisVersion=1.20211129.430
diff --git a/gradle/versions/release b/gradle/versions/release
index e440e5c..8e2afd3 100644
--- a/gradle/versions/release
+++ b/gradle/versions/release
@@ -1 +1 @@
-3
\ No newline at end of file
+17
\ No newline at end of file
diff --git a/reporting-tools/build.gradle b/reporting-tools/build.gradle
new file mode 100644
index 0000000..fd24fbe
--- /dev/null
+++ b/reporting-tools/build.gradle
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2016-2024 Deephaven Data Labs and Patent Pending
+ */
+
+plugins {
+ id 'java-library'
+ id 'com.github.johnrengelman.shadow' version '6.1.0'
+}
+configurations {
+ output
+}
+repositories {
+ mavenCentral()
+}
+dependencies {
+ // use the newest version which does not have any security issues
+ runtimeOnly 'org.apache.commons:commons-text:1.10.0'
+ runtimeOnly 'org.apache.commons:commons-email:1.6.0'
+ runtimeOnly 'com.slack.api:slack-api-client:1.46.0'
+}
+import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
+tasks.named('shadowJar', ShadowJar).configure {
+ ShadowJar s ->
+ s.relocate('org', 'io.deephaven.reporting.org')
+ s.relocate('com', 'io.deephaven.reporting.com')
+ s.relocate('okio', 'io.deephaven.reporting.okio')
+ s.relocate('okhttp3', 'io.deephaven.reporting.okhttp3')
+ s.relocate('kotlin', 'io.deephaven.reporting.kotlin')
+ s.mergeServiceFiles()
+}
+
+artifacts {
+ output(tasks.shadowJar) {
+ builtBy tasks.shadowJar
+ }
+}
\ No newline at end of file
diff --git a/settings.gradle b/settings.gradle
index f369441..59ab36b 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -2,3 +2,5 @@ rootProject.name = 'report-generation'
// https://docs.gradle.org/6.5/userguide/single_versions.html
enableFeaturePreview("VERSION_ORDERING_V2")
+
+include(':reporting-tools')
\ No newline at end of file
diff --git a/src/main/java/io/deephaven/plugins/email/EmailHtmlRenderer.java b/src/main/java/io/deephaven/plugins/email/EmailHtmlRenderer.java
index 186f744..af23e17 100644
--- a/src/main/java/io/deephaven/plugins/email/EmailHtmlRenderer.java
+++ b/src/main/java/io/deephaven/plugins/email/EmailHtmlRenderer.java
@@ -19,15 +19,15 @@
import io.deephaven.plugins.html.Trailer;
import io.deephaven.plugins.report.Figure;
import io.deephaven.plugins.report.Report;
+import io.deephaven.reporting.org.apache.commons.mail.DefaultAuthenticator;
+import io.deephaven.reporting.org.apache.commons.mail.EmailException;
+import io.deephaven.reporting.org.apache.commons.mail.ImageHtmlEmail;
+import io.deephaven.reporting.org.apache.commons.mail.resolver.DataSourceFileResolver;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
import java.util.List;
import java.util.Objects;
-import org.apache.commons.mail.DefaultAuthenticator;
-import org.apache.commons.mail.EmailException;
-import org.apache.commons.mail.ImageHtmlEmail;
-import org.apache.commons.mail.resolver.DataSourceFileResolver;
class EmailHtmlRenderer extends InlineHtmlRenderer {
diff --git a/src/main/java/io/deephaven/plugins/email/EmailSendingConfig.java b/src/main/java/io/deephaven/plugins/email/EmailSendingConfig.java
index c68f98c..1875a62 100644
--- a/src/main/java/io/deephaven/plugins/email/EmailSendingConfig.java
+++ b/src/main/java/io/deephaven/plugins/email/EmailSendingConfig.java
@@ -20,6 +20,7 @@
import com.illumon.util.FunctionalInterfaces.ThrowingSupplier;
import io.deephaven.plugins.html.Trailer;
import io.deephaven.plugins.report.Report;
+import io.deephaven.reporting.org.apache.commons.mail.ImageHtmlEmail;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
@@ -27,7 +28,6 @@
import java.time.Duration;
import java.util.List;
import java.util.stream.Collectors;
-import org.apache.commons.mail.ImageHtmlEmail;
import org.immutables.value.Value.Check;
import org.immutables.value.Value.Default;
import org.immutables.value.Value.Immutable;
diff --git a/src/main/java/io/deephaven/plugins/html/InlineHtmlRenderer.java b/src/main/java/io/deephaven/plugins/html/InlineHtmlRenderer.java
index b94c7a4..9a45d9a 100644
--- a/src/main/java/io/deephaven/plugins/html/InlineHtmlRenderer.java
+++ b/src/main/java/io/deephaven/plugins/html/InlineHtmlRenderer.java
@@ -27,13 +27,13 @@
import io.deephaven.plugins.report.TableLocal;
import io.deephaven.plugins.report.TablePQ;
import io.deephaven.plugins.report.Text;
+import io.deephaven.reporting.org.apache.commons.text.StringEscapeUtils;
import java.io.File;
import java.time.Duration;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
-import org.apache.commons.lang.StringEscapeUtils;
public abstract class InlineHtmlRenderer implements Visitor, Table.Visitor {
@@ -191,7 +191,7 @@ public void visit(Text text) {
}
private static String escape(String raw) {
- return StringEscapeUtils.escapeHtml(raw);
+ return StringEscapeUtils.escapeHtml4(raw);
}
private void indent() {
diff --git a/src/main/java/io/deephaven/plugins/html/TableToHtml.java b/src/main/java/io/deephaven/plugins/html/TableToHtml.java
index d331830..e4e7526 100644
--- a/src/main/java/io/deephaven/plugins/html/TableToHtml.java
+++ b/src/main/java/io/deephaven/plugins/html/TableToHtml.java
@@ -20,9 +20,9 @@
import com.illumon.iris.db.tables.utils.DBTimeZone;
import com.illumon.iris.db.v2.sources.ColumnSource;
import com.illumon.iris.db.v2.utils.Index;
+import io.deephaven.reporting.org.apache.commons.text.StringEscapeUtils;
import java.util.Collection;
import java.util.List;
-import org.apache.commons.lang.StringEscapeUtils;
public class TableToHtml {
public static String html(Table source) {
@@ -50,12 +50,12 @@ public static String html(Table source) {
out.append("
");
final Object value = columnSource.get(key);
if (value instanceof String) {
- out.append(StringEscapeUtils.escapeHtml((String) value));
+ out.append(StringEscapeUtils.escapeHtml4((String) value));
} else if (value instanceof DBDateTime) {
final DBDateTime dbDateTime = (DBDateTime) value;
- out.append(StringEscapeUtils.escapeHtml(dbDateTime.toString(DBTimeZone.TZ_DEFAULT)));
+ out.append(StringEscapeUtils.escapeHtml4(dbDateTime.toString(DBTimeZone.TZ_DEFAULT)));
} else if (value != null) {
- out.append(StringEscapeUtils.escapeHtml(value.toString()));
+ out.append(StringEscapeUtils.escapeHtml4(value.toString()));
} else {
// For now, don't output anything for null values.
}
diff --git a/src/main/java/io/deephaven/plugins/report/FigurePQ.java b/src/main/java/io/deephaven/plugins/report/FigurePQ.java
index a9d962a..2b28953 100644
--- a/src/main/java/io/deephaven/plugins/report/FigurePQ.java
+++ b/src/main/java/io/deephaven/plugins/report/FigurePQ.java
@@ -62,7 +62,7 @@ public final FigureLocal toLocal(Logger log, Duration timeout) throws Exception
db.executeConcurrentQuery(ReportFigureCARQ.of(figureName()))
.inflate(db.getProcessorConnection());
- figure.waitForData();
+ figure.waitForData(log, figure.getFigure());
return ImmutableFigureLocal.builder()
.figure(figure)
diff --git a/src/main/java/io/deephaven/plugins/report/ItemToGroovyish.java b/src/main/java/io/deephaven/plugins/report/ItemToGroovyish.java
index 7ba67cf..0be5826 100644
--- a/src/main/java/io/deephaven/plugins/report/ItemToGroovyish.java
+++ b/src/main/java/io/deephaven/plugins/report/ItemToGroovyish.java
@@ -16,9 +16,9 @@
package io.deephaven.plugins.report;
import io.deephaven.plugins.report.Item.Visitor;
+import io.deephaven.reporting.org.apache.commons.text.StringEscapeUtils;
import java.util.Objects;
import java.util.stream.Collectors;
-import org.apache.commons.lang.StringEscapeUtils;
class ItemToGroovyish implements Visitor, Table.Visitor, Figure.Visitor {
diff --git a/src/main/java/io/deephaven/plugins/slack/ClientImpl.java b/src/main/java/io/deephaven/plugins/slack/ClientImpl.java
index 088420e..4ee9ed7 100644
--- a/src/main/java/io/deephaven/plugins/slack/ClientImpl.java
+++ b/src/main/java/io/deephaven/plugins/slack/ClientImpl.java
@@ -17,14 +17,14 @@
import com.fishlib.io.logger.Logger;
import com.illumon.iris.db.tables.live.LiveTableMonitor;
-import com.slack.api.Slack;
-import com.slack.api.methods.MethodsClient;
-import com.slack.api.methods.SlackApiException;
-import com.slack.api.methods.request.chat.ChatPostMessageRequest;
-import com.slack.api.methods.response.chat.ChatPostMessageResponse;
-import com.slack.api.model.block.SectionBlock;
-import com.slack.api.model.block.composition.MarkdownTextObject;
import io.deephaven.plugins.report.Report;
+import io.deephaven.reporting.com.slack.api.Slack;
+import io.deephaven.reporting.com.slack.api.methods.MethodsClient;
+import io.deephaven.reporting.com.slack.api.methods.SlackApiException;
+import io.deephaven.reporting.com.slack.api.methods.request.chat.ChatPostMessageRequest;
+import io.deephaven.reporting.com.slack.api.methods.response.chat.ChatPostMessageResponse;
+import io.deephaven.reporting.com.slack.api.model.block.SectionBlock;
+import io.deephaven.reporting.com.slack.api.model.block.composition.MarkdownTextObject;
import java.io.IOException;
import java.io.UncheckedIOException;
import java.time.Duration;
diff --git a/src/main/java/io/deephaven/plugins/slack/Functions.java b/src/main/java/io/deephaven/plugins/slack/Functions.java
index 898cb54..3c7886e 100644
--- a/src/main/java/io/deephaven/plugins/slack/Functions.java
+++ b/src/main/java/io/deephaven/plugins/slack/Functions.java
@@ -15,8 +15,8 @@
*/
package io.deephaven.plugins.slack;
-import com.slack.api.Slack;
import io.deephaven.plugins.slack.ClientImpl.LockType;
+import io.deephaven.reporting.com.slack.api.Slack;
public class Functions {
diff --git a/src/main/java/io/deephaven/plugins/slack/ReportMessage.java b/src/main/java/io/deephaven/plugins/slack/ReportMessage.java
index 0a25ecf..93cebe4 100644
--- a/src/main/java/io/deephaven/plugins/slack/ReportMessage.java
+++ b/src/main/java/io/deephaven/plugins/slack/ReportMessage.java
@@ -15,8 +15,8 @@
*/
package io.deephaven.plugins.slack;
-import com.slack.api.Slack;
import io.deephaven.plugins.report.Report;
+import io.deephaven.reporting.com.slack.api.Slack;
import java.util.List;
import org.immutables.value.Value.Immutable;
diff --git a/src/main/java/io/deephaven/plugins/slack/SlackMessagePerItemRenderer.java b/src/main/java/io/deephaven/plugins/slack/SlackMessagePerItemRenderer.java
index 75efd32..7364e79 100644
--- a/src/main/java/io/deephaven/plugins/slack/SlackMessagePerItemRenderer.java
+++ b/src/main/java/io/deephaven/plugins/slack/SlackMessagePerItemRenderer.java
@@ -15,18 +15,6 @@
*/
package io.deephaven.plugins.slack;
-import com.slack.api.methods.MethodsClient;
-import com.slack.api.methods.SlackApiException;
-import com.slack.api.methods.request.chat.ChatPostMessageRequest;
-import com.slack.api.methods.request.chat.ChatPostMessageRequest.ChatPostMessageRequestBuilder;
-import com.slack.api.methods.request.files.FilesUploadRequest;
-import com.slack.api.methods.response.chat.ChatPostMessageResponse;
-import com.slack.api.methods.response.files.FilesUploadResponse;
-import com.slack.api.model.block.ContextBlock;
-import com.slack.api.model.block.LayoutBlock;
-import com.slack.api.model.block.SectionBlock;
-import com.slack.api.model.block.composition.MarkdownTextObject;
-import com.slack.api.model.block.composition.PlainTextObject;
import io.deephaven.plugins.report.Figure;
import io.deephaven.plugins.report.Group;
import io.deephaven.plugins.report.Item;
@@ -36,6 +24,19 @@
import io.deephaven.plugins.report.TableLocal;
import io.deephaven.plugins.report.TablePQ;
import io.deephaven.plugins.report.Text;
+import io.deephaven.reporting.com.slack.api.methods.MethodsClient;
+import io.deephaven.reporting.com.slack.api.methods.SlackApiException;
+import io.deephaven.reporting.com.slack.api.methods.SlackFilesUploadV2Exception;
+import io.deephaven.reporting.com.slack.api.methods.request.chat.ChatPostMessageRequest;
+import io.deephaven.reporting.com.slack.api.methods.request.chat.ChatPostMessageRequest.ChatPostMessageRequestBuilder;
+import io.deephaven.reporting.com.slack.api.methods.request.files.FilesUploadV2Request;
+import io.deephaven.reporting.com.slack.api.methods.response.chat.ChatPostMessageResponse;
+import io.deephaven.reporting.com.slack.api.methods.response.files.FilesUploadV2Response;
+import io.deephaven.reporting.com.slack.api.model.block.ContextBlock;
+import io.deephaven.reporting.com.slack.api.model.block.LayoutBlock;
+import io.deephaven.reporting.com.slack.api.model.block.SectionBlock;
+import io.deephaven.reporting.com.slack.api.model.block.composition.MarkdownTextObject;
+import io.deephaven.reporting.com.slack.api.model.block.composition.PlainTextObject;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
@@ -161,7 +162,7 @@ public void visit(Group group) {
}
}
- private com.slack.api.model.File uploadFigureInChannel(Figure> figure) {
+ private io.deephaven.reporting.com.slack.api.model.File uploadFigureInChannel(Figure> figure) {
final File file;
try {
file = File.createTempFile(figure.name().orElse("figure") + "-", ".png");
@@ -170,18 +171,19 @@ private com.slack.api.model.File uploadFigureInChannel(Figure> figure) {
}
figure.walk(SaveFigure.builder().file(file).build());
-
- final FilesUploadRequest request =
- FilesUploadRequest.builder()
- .title(figure.name().orElse(null))
- .channels(Collections.singletonList(config().channel()))
+ final FilesUploadV2Request request =
+ FilesUploadV2Request.builder()
+ .title(figure.name().orElse(""))
+ .channel(config().channel())
.filename(file.getName())
.file(file)
.build();
- final FilesUploadResponse response;
+ final FilesUploadV2Response response;
try {
- response = client().filesUpload(request);
+ response = client().filesUploadV2(request);
+ } catch (SlackFilesUploadV2Exception e) {
+ throw new RuntimeException("Slack error: " + e);
} catch (IOException e) {
throw new UncheckedIOException(e);
} catch (SlackApiException e) {
diff --git a/src/main/java/io/deephaven/plugins/slack/SlackRenderer.java b/src/main/java/io/deephaven/plugins/slack/SlackRenderer.java
index 1bfca90..7b945ef 100644
--- a/src/main/java/io/deephaven/plugins/slack/SlackRenderer.java
+++ b/src/main/java/io/deephaven/plugins/slack/SlackRenderer.java
@@ -15,20 +15,6 @@
*/
package io.deephaven.plugins.slack;
-import com.slack.api.Slack;
-import com.slack.api.methods.SlackApiException;
-import com.slack.api.methods.request.chat.ChatPostMessageRequest;
-import com.slack.api.methods.request.files.FilesSharedPublicURLRequest;
-import com.slack.api.methods.request.files.FilesUploadRequest;
-import com.slack.api.methods.response.files.FilesSharedPublicURLResponse;
-import com.slack.api.methods.response.files.FilesUploadResponse;
-import com.slack.api.model.block.ContextBlock;
-import com.slack.api.model.block.DividerBlock;
-import com.slack.api.model.block.ImageBlock;
-import com.slack.api.model.block.ImageBlock.ImageBlockBuilder;
-import com.slack.api.model.block.LayoutBlock;
-import com.slack.api.model.block.SectionBlock;
-import com.slack.api.model.block.composition.PlainTextObject;
import io.deephaven.plugins.report.Figure;
import io.deephaven.plugins.report.Group;
import io.deephaven.plugins.report.Item;
@@ -36,6 +22,20 @@
import io.deephaven.plugins.report.SaveFigure;
import io.deephaven.plugins.report.Table;
import io.deephaven.plugins.report.Text;
+import io.deephaven.reporting.com.slack.api.Slack;
+import io.deephaven.reporting.com.slack.api.methods.SlackApiException;
+import io.deephaven.reporting.com.slack.api.methods.request.chat.ChatPostMessageRequest;
+import io.deephaven.reporting.com.slack.api.methods.request.files.FilesSharedPublicURLRequest;
+import io.deephaven.reporting.com.slack.api.methods.request.files.FilesUploadV2Request;
+import io.deephaven.reporting.com.slack.api.methods.response.files.FilesSharedPublicURLResponse;
+import io.deephaven.reporting.com.slack.api.methods.response.files.FilesUploadV2Response;
+import io.deephaven.reporting.com.slack.api.model.block.ContextBlock;
+import io.deephaven.reporting.com.slack.api.model.block.DividerBlock;
+import io.deephaven.reporting.com.slack.api.model.block.ImageBlock;
+import io.deephaven.reporting.com.slack.api.model.block.ImageBlock.ImageBlockBuilder;
+import io.deephaven.reporting.com.slack.api.model.block.LayoutBlock;
+import io.deephaven.reporting.com.slack.api.model.block.SectionBlock;
+import io.deephaven.reporting.com.slack.api.model.block.composition.PlainTextObject;
import java.io.File;
import java.io.IOException;
import java.io.UncheckedIOException;
@@ -94,7 +94,7 @@ public void visit(Table> table) {
@Override
public void visit(Figure> figure) {
- final com.slack.api.model.File file = uploadFigure(figure);
+ final io.deephaven.reporting.com.slack.api.model.File file = uploadFigure(figure);
final ImageBlockBuilder builder = ImageBlock.builder().imageUrl(getUrl(file));
if (figure.name().isPresent()) {
builder.title(PlainTextObject.builder().text(figure.name().get()).build());
@@ -125,7 +125,7 @@ public void visit(Group group) {
}
}
- private static String getUrl(com.slack.api.model.File file) {
+ private static String getUrl(io.deephaven.reporting.com.slack.api.model.File file) {
// very hacky :s
final String[] parts = file.getPermalinkPublic().split("-");
final String pubSecret = parts[parts.length - 1];
@@ -146,7 +146,7 @@ private void addContextString(String value) {
.build());
}
- private com.slack.api.model.File uploadFigure(Figure> figure) {
+ private io.deephaven.reporting.com.slack.api.model.File uploadFigure(Figure> figure) {
final File file;
try {
file = File.createTempFile(figure.name().orElse("figure") + "-", ".png");
@@ -156,16 +156,16 @@ private com.slack.api.model.File uploadFigure(Figure> figure) {
figure.walk(SaveFigure.builder().file(file).build());
- final FilesUploadRequest request =
- FilesUploadRequest.builder()
+ final FilesUploadV2Request request =
+ FilesUploadV2Request.builder()
// .channels(Collections.singletonList(config.channel()))
.filename(file.getName())
.file(file)
.build();
- final FilesUploadResponse response;
+ final FilesUploadV2Response response;
try {
- response = slack.methods(config.token()).filesUpload(request);
+ response = slack.methods(config.token()).filesUploadV2(request);
} catch (IOException e) {
throw new UncheckedIOException(e);
} catch (SlackApiException e) {
diff --git a/src/test/groovy/io/deephaven/plugins/html/InlineHtmlRendererTest.groovy b/src/test/groovy/io/deephaven/plugins/html/InlineHtmlRendererTest.groovy
index b56a8fb..e3f7297 100644
--- a/src/test/groovy/io/deephaven/plugins/html/InlineHtmlRendererTest.groovy
+++ b/src/test/groovy/io/deephaven/plugins/html/InlineHtmlRendererTest.groovy
@@ -17,7 +17,7 @@ package io.deephaven.plugins.html
import io.deephaven.plugins.report.Item
import io.deephaven.plugins.report.Report
-import org.apache.commons.mail.EmailException
+import io.deephaven.reporting.org.apache.commons.mail.EmailException
import org.junit.jupiter.api.Test
import java.time.Instant
diff --git a/src/test/groovy/io/deephaven/plugins/slack/SlackTest.groovy b/src/test/groovy/io/deephaven/plugins/slack/SlackTest.groovy
index f8d5ec8..d19cf12 100644
--- a/src/test/groovy/io/deephaven/plugins/slack/SlackTest.groovy
+++ b/src/test/groovy/io/deephaven/plugins/slack/SlackTest.groovy
@@ -15,25 +15,25 @@
*/
package io.deephaven.plugins.slack
-import io.deephaven.plugins.slack.Functions as slack
+// import io.deephaven.plugins.slack.Functions
import org.junit.jupiter.api.Test
class SlackTest {
@Test
void simpleClient() {
- slack.client(slack.config("faketoken", "#fakechannel"))
+ Functions.client(Functions.config("faketoken", "#fakechannel"))
}
@Test
void noLockClient() {
- slack.client(slack.config("faketoken", "#fakechannel")).withLockType(slack.noLock())
+ Functions.client(Functions.config("faketoken", "#fakechannel")).withLockType(Functions.noLock())
}
@Test
void lockTypeExampleFromReadme() {
- def config = slack.config("", "#the_channel")
- def client_with_no_lock = slack.client(config).withLockType(slack.noLock())
- def client_with_shared_lock = slack.client(config).withLockType(slack.sharedLock())
- def client_with_exclusive_lock = slack.client(config).withLockType(slack.exclusiveLock())
+ def config = Functions.config("", "#the_channel")
+ def client_with_no_lock = Functions.client(config).withLockType(Functions.noLock())
+ def client_with_shared_lock = Functions.client(config).withLockType(Functions.sharedLock())
+ def client_with_exclusive_lock = Functions.client(config).withLockType(Functions.exclusiveLock())
}
}
|