Skip to content

Commit 7e44a14

Browse files
Initial PR for web pub sub support in Java (Azure#20318)
* Initial commit of in-progress SignalR client library * More progress on SignalR client - about to refactor APIs to follow guidelines, so committing changes first. * First pass on JavaDoc, a few champion scenarios implemented, and other improvements. * Rename method * Fix bad rename * Another rename miss. * Updates to the SignalR client: * Using newer autorest to fix a few stylistic and API issues * Using default hub when no hub is specified, rather than "_default" * Reintroduced the 'SignalRHubStatus' type * Minor tweaks * Improved JavaDoc for SignalR client * Adding md file for generating signalr base code * updating to latest swagger file for signalR, as well as latest autorest tooling. * Initial commit of in-progress SignalR client library * More progress on SignalR client - about to refactor APIs to follow guidelines, so committing changes first. * First pass on JavaDoc, a few champion scenarios implemented, and other improvements. * Rename method * Fix bad rename * Another rename miss. * Updates to the SignalR client: * Using newer autorest to fix a few stylistic and API issues * Using default hub when no hub is specified, rather than "_default" * Reintroduced the 'SignalRHubStatus' type * Minor tweaks * Improved JavaDoc for SignalR client * Adding md file for generating signalr base code * updating to latest swagger file for signalR, as well as latest autorest tooling. * Upgrading to the latest swagger and changing to new naming pattern * Misc updates to signalr -> webpubsub * Misc improvements based on more recent swagger files and feature request. * Misc improvements based on build tools * Remove old pom * Setup CI build pipeline * Fix versions * Add versioning tag * Fix cosmos spark enforcer rules * Fix external dependency versions * Fix cosmos spark pom * Fix readme format * Change jwt version * Fix unit tests, enable playback and add test recordings * Use UTF 8 Co-authored-by: Srikanta <[email protected]>
1 parent 20c38fe commit 7e44a14

File tree

51 files changed

+9200
-4
lines changed

Some content is hidden

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

51 files changed

+9200
-4
lines changed

eng/code-quality-reports/src/main/resources/checkstyle/checkstyle-suppressions.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,9 @@ the main ServiceBusClientBuilder. -->
323323
<suppress checks="."
324324
files=".*[/\\]azure-quantum-jobs[/\\]src[/\\]main[/\\]java[/\\]"/>
325325

326+
<suppress checks="."
327+
files=".*[/\\]webpubsub[/\\]implementation[/\\]"/>
328+
326329
<!-- Suppress ConfigurationCredentialsPolicy for HttpPipelinePolicyCheck.
327330
This suppression need to be deleted after AzConfig using AAD credential.
328331
Issue Link: https://github.com/Azure/azure-sdk-for-java/issues/5131 -->
@@ -334,6 +337,9 @@ the main ServiceBusClientBuilder. -->
334337
<suppress checks="com.azure.tools.checkstyle.checks.BlacklistedWordsCheck" files=".*[/\\]storage[/\\].*samples[/\\].*"/>
335338
<suppress checks="com.azure.tools.checkstyle.checks.BlacklistedWordsCheck" files=".*[/\\]implementation[/\\].*"/>
336339

340+
<!-- FIXME temp -->
341+
<suppress checks="ServiceClient" files="com.azure.messaging.webpubsub.*"/>
342+
337343
<!-- Suppress the check on code-gen classes -->
338344
<suppress checks="[a-zA-Z0-9]*" files="com.azure.monitor.opentelemetry.exporter.implementation.*"/>
339345
<suppress checks="Indentation" files="com.azure.security.keyvault.administration.implementation.RoleAssignmentsImpl"/>

eng/jacoco-test-coverage/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,11 @@
211211
<artifactId>azure-messaging-servicebus</artifactId>
212212
<version>7.2.0-beta.1</version> <!-- {x-version-update;com.azure:azure-messaging-servicebus;current} -->
213213
</dependency>
214+
<dependency>
215+
<groupId>com.azure</groupId>
216+
<artifactId>azure-messaging-webpubsub</artifactId>
217+
<version>1.0.0-beta.1</version> <!-- {x-version-update;com.azure:azure-messaging-webpubsub;current} -->
218+
</dependency>
214219
<dependency>
215220
<groupId>com.azure</groupId>
216221
<artifactId>azure-search-documents</artifactId>

eng/versioning/external_dependencies.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ javax.annotation:javax.annotation-api;1.3.2
6565
javax.json:javax.json-api;1.1.4
6666
javax.servlet:javax.servlet-api;4.0.1
6767
javax.validation:validation-api;2.0.1.Final
68+
javax.websocket:javax.websocket-api;1.1
6869
mysql:mysql-connector-java;8.0.23
6970
net.minidev:json-smart;2.3
7071
org.apache.ant:ant;1.9.4
@@ -84,6 +85,8 @@ org.asynchttpclient:async-http-client;2.12.1
8485
org.codehaus.groovy:groovy-eclipse-batch;2.5.8-01
8586
org.codehaus.groovy:groovy-eclipse-compiler;3.4.0-01
8687
org.conscrypt:conscrypt-openjdk-uber;2.2.1
88+
org.glassfish.tyrus:tyrus-container-grizzly;1.2.1
89+
org.glassfish.tyrus.bundles:tyrus-standalone-client;1.16
8790
org.hibernate.validator:hibernate-validator;6.1.7.Final
8891
org.javatuples:javatuples;1.2
8992
org.linguafranca.pwdb:KeePassJava2;2.1.4

eng/versioning/version_client.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ com.azure:azure-messaging-eventhubs-checkpointstore-blob;1.5.1;1.6.0-beta.1
8888
com.azure:azure-messaging-servicebus;7.1.0;7.2.0-beta.1
8989
com.azure:azure-messaging-servicebus-track1-perf;1.0.0-beta.1;1.0.0-beta.1
9090
com.azure:azure-messaging-servicebus-track2-perf;1.0.0-beta.1;1.0.0-beta.1
91+
com.azure:azure-messaging-webpubsub;1.0.0-beta.1;1.0.0-beta.1
9192
com.azure:azure-mixedreality-authentication;1.0.0-beta.1;1.0.0
9293
com.azure:azure-mixedreality-remoterendering;1.0.0;1.1.0-beta.1
9394
com.azure:azure-monitor-opentelemetry-exporter;1.0.0-beta.4;1.0.0-beta.5

pom.xml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,9 @@
8484
<!-- Quantum Jobs -->
8585
<module>sdk/quantum/azure-quantum-jobs</module>
8686

87+
<!-- Remote Rendering -->
88+
<module>sdk/remoterendering/azure-mixedreality-remoterendering</module>
89+
8790
<!-- Schema Registry -->
8891
<module>sdk/schemaregistry/azure-data-schemaregistry</module>
8992
<module>sdk/schemaregistry/azure-data-schemaregistry-avro</module>
@@ -119,8 +122,8 @@
119122
<!-- Text Analytics -->
120123
<module>sdk/textanalytics/azure-ai-textanalytics</module>
121124

122-
<!-- Remote Rendering -->
123-
<module>sdk/remoterendering/azure-mixedreality-remoterendering</module>
125+
<!-- Web Pub Sub -->
126+
<module>sdk/webpubsub/azure-messaging-webpubsub</module>
124127
</modules>
125128

126129
<distributionManagement>
@@ -320,6 +323,10 @@
320323
<title>Azure Text Analytics</title>
321324
<packages>com.azure.ai.textanalytics*</packages>
322325
</group>
326+
<group>
327+
<title>Azure Web Pub Sub</title>
328+
<package>com.azure.messaging.webpubsub*</package>
329+
</group>
323330
<group>
324331
<title>Azure Mixed Reality Authentication</title>
325332
<packages>com.azure.mixedreality.authentication*</packages>
@@ -578,6 +585,7 @@
578585
-snippetpath ${project.basedir}/sdk/storage/azure-storage-file-share/src/samples/java
579586
-snippetpath ${project.basedir}/sdk/storage/azure-storage-queue/src/samples/java
580587
-snippetpath ${project.basedir}/sdk/textanalytics/azure-ai-textanalytics/src/samples/java
588+
-snippetpath ${project.basedir}/sdk/webpubsub/azure-messaging-webpubsub/src/samples/java
581589
</additionalOptions>
582590
<aggregate>true</aggregate>
583591
<doclint>all</doclint>
@@ -708,8 +716,8 @@
708716
<module>sdk/tables</module>
709717
<module>sdk/template</module>
710718
<module>sdk/textanalytics</module>
719+
<module>sdk/webpubsub</module>
711720
</modules>
712721
</profile>
713722
</profiles>
714-
715723
</project>

sdk/cosmos/azure-cosmos-encryption/pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,6 @@ Licensed under the MIT License.
236236
</properties>
237237
</configuration>
238238
</plugin>
239-
240239
<plugin>
241240
<groupId>org.apache.maven.plugins</groupId>
242241
<artifactId>maven-enforcer-plugin</artifactId>

sdk/cosmos/azure-cosmos-spark_3-1_2-12/pom.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
</developer>
3939
</developers>
4040

41+
4142
<dependencies>
4243
<dependency>
4344
<groupId>org.scala-lang</groupId>
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Release History
2+
## 1.0.0-beta.1 (Unreleased)
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Azure Web Pub Sub client library for Java
2+
Azure Web Pub Sub client library for Java allows sending messages to Web Pub Sub.
3+
4+
## Getting started
5+
Add getting started details
6+
7+
## Key concepts
8+
Add key concepts
9+
10+
## Examples
11+
Add examples
12+
13+
## Troubleshooting
14+
Add troubleshooting steps
15+
16+
## Next steps
17+
Add further reading material here
18+
19+
## Contributing
20+
Add contributing guide here
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
<!-- Copyright (c) Microsoft Corporation. All rights reserved.
2+
Licensed under the MIT License. -->
3+
<project xmlns="http://maven.apache.org/POM/4.0.0"
4+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
6+
<modelVersion>4.0.0</modelVersion>
7+
<parent>
8+
<groupId>com.azure</groupId>
9+
<artifactId>azure-client-sdk-parent</artifactId>
10+
<version>1.7.0</version> <!-- {x-version-update;com.azure:azure-client-sdk-parent;current} -->
11+
<relativePath>../../parents/azure-client-sdk-parent/pom.xml</relativePath>
12+
</parent>
13+
14+
<groupId>com.azure</groupId>
15+
<artifactId>azure-messaging-webpubsub</artifactId>
16+
<version>1.0.0-beta.1</version> <!-- {x-version-update;com.azure:azure-messaging-webpubsub;current} -->
17+
18+
<name>Microsoft Azure client library for Azure Web Pub Sub Service</name>
19+
<description>This package contains the Microsoft Azure Web Pub Sub library.</description>
20+
<url>https://github.com/Azure/azure-sdk-for-java</url>
21+
22+
<distributionManagement>
23+
<site>
24+
<id>azure-java-build-docs</id>
25+
<url>${site.url}/site/${project.artifactId}</url>
26+
</site>
27+
</distributionManagement>
28+
29+
<scm>
30+
<url>scm:git:https://github.com/Azure/azure-sdk-for-java</url>
31+
<connection>scm:git:[email protected]:Azure/azure-sdk-for-java.git</connection>
32+
<tag>HEAD</tag>
33+
</scm>
34+
35+
<properties>
36+
<!-- Once full testing is added this should either be removed or increased -->
37+
<jacoco.min.linecoverage>0.10</jacoco.min.linecoverage>
38+
<jacoco.min.branchcoverage>0.10</jacoco.min.branchcoverage>
39+
</properties>
40+
41+
<dependencies>
42+
<dependency>
43+
<groupId>com.azure</groupId>
44+
<artifactId>azure-core</artifactId>
45+
<version>1.14.1</version> <!-- {x-version-update;com.azure:azure-core;dependency} -->
46+
</dependency>
47+
<dependency>
48+
<groupId>com.azure</groupId>
49+
<artifactId>azure-core-http-netty</artifactId>
50+
<version>1.9.0</version> <!-- {x-version-update;com.azure:azure-core-http-netty;dependency} -->
51+
</dependency>
52+
<dependency>
53+
<groupId>com.nimbusds</groupId>
54+
<artifactId>nimbus-jose-jwt</artifactId>
55+
<version>8.20.2</version> <!-- {x-version-update;com.nimbusds:nimbus-jose-jwt;external_dependency} -->
56+
</dependency>
57+
58+
<!-- Test dependencies -->
59+
<dependency>
60+
<groupId>com.azure</groupId>
61+
<artifactId>azure-core-test</artifactId>
62+
<version>1.6.0</version> <!-- {x-version-update;com.azure:azure-core-test;dependency} -->
63+
<scope>test</scope>
64+
</dependency>
65+
<dependency>
66+
<groupId>org.junit.jupiter</groupId>
67+
<artifactId>junit-jupiter-api</artifactId>
68+
<version>5.7.1</version> <!-- {x-version-update;org.junit.jupiter:junit-jupiter-api;external_dependency} -->
69+
<scope>test</scope>
70+
</dependency>
71+
<dependency>
72+
<groupId>org.junit.jupiter</groupId>
73+
<artifactId>junit-jupiter-engine</artifactId>
74+
<version>5.7.1</version> <!-- {x-version-update;org.junit.jupiter:junit-jupiter-engine;external_dependency} -->
75+
<scope>test</scope>
76+
</dependency>
77+
<dependency>
78+
<groupId>org.junit.jupiter</groupId>
79+
<artifactId>junit-jupiter-params</artifactId>
80+
<version>5.7.1</version> <!-- {x-version-update;org.junit.jupiter:junit-jupiter-params;external_dependency} -->
81+
<scope>test</scope>
82+
</dependency>
83+
<dependency>
84+
<groupId>org.hamcrest</groupId>
85+
<artifactId>hamcrest-library</artifactId>
86+
<version>2.2</version> <!-- {x-version-update;org.hamcrest:hamcrest-library;external_dependency} -->
87+
<scope>test</scope>
88+
</dependency>
89+
<dependency>
90+
<groupId>io.projectreactor</groupId>
91+
<artifactId>reactor-test</artifactId>
92+
<version>3.4.3</version> <!-- {x-version-update;io.projectreactor:reactor-test;external_dependency} -->
93+
<scope>test</scope>
94+
</dependency>
95+
<dependency>
96+
<groupId>com.azure</groupId>
97+
<artifactId>azure-identity</artifactId>
98+
<version>1.2.4</version> <!-- {x-version-update;com.azure:azure-identity;dependency} -->
99+
<scope>test</scope>
100+
</dependency>
101+
102+
<dependency>
103+
<groupId>javax.websocket</groupId>
104+
<artifactId>javax.websocket-api</artifactId>
105+
<version>1.1</version> <!-- {x-version-update;javax.websocket:javax.websocket-api;external_dependency} -->
106+
<scope>test</scope>
107+
</dependency>
108+
<dependency>
109+
<groupId>org.glassfish.tyrus.bundles</groupId>
110+
<artifactId>tyrus-standalone-client</artifactId>
111+
<version>1.16</version> <!-- {x-version-update;org.glassfish.tyrus.bundles:tyrus-standalone-client;external_dependency} -->
112+
<scope>test</scope>
113+
</dependency>
114+
<dependency>
115+
<groupId>org.glassfish.tyrus</groupId>
116+
<artifactId>tyrus-container-grizzly</artifactId>
117+
<version>1.2.1</version> <!-- {x-version-update;org.glassfish.tyrus:tyrus-container-grizzly;external_dependency} -->
118+
<scope>test</scope>
119+
</dependency>
120+
</dependencies>
121+
122+
<build>
123+
<plugins>
124+
<plugin>
125+
<groupId>org.apache.maven.plugins</groupId>
126+
<artifactId>maven-enforcer-plugin</artifactId>
127+
<version>3.0.0-M3</version> <!-- {x-version-update;org.apache.maven.plugins:maven-enforcer-plugin;external_dependency} -->
128+
<configuration>
129+
<rules>
130+
<bannedDependencies>
131+
<includes>
132+
<include>com.azure:*</include>
133+
<include>com.nimbusds:nimbus-jose-jwt:[8.20.2]</include> <!-- {x-include-update;com.nimbusds:nimbus-jose-jwt;external_dependency} -->
134+
</includes>
135+
</bannedDependencies>
136+
</rules>
137+
</configuration>
138+
</plugin>
139+
</plugins>
140+
</build>
141+
</project>

0 commit comments

Comments
 (0)