Skip to content

Commit

Permalink
Initial version.
Browse files Browse the repository at this point in the history
  • Loading branch information
io7m committed Apr 27, 2024
1 parent 4e20802 commit 5163a2f
Show file tree
Hide file tree
Showing 48 changed files with 4,045 additions and 0 deletions.
18 changes: 18 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@

version: 2

updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

- package-ecosystem: "maven"
directory: "/"
schedule:
interval: "weekly"

target-branch: "develop"
ignore:
- dependency-name: "*"
update-types: [ "version-update:semver-major" ]
26 changes: 26 additions & 0 deletions .github/workflows/main.linux.temurin.current.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: main.linux.temurin.current

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: JDK
uses: actions/setup-java@v4
with:
java-version: 22
distribution: 'temurin'
- name: Build
run: mvn --errors clean verify site
- name: Upload test logs
uses: actions/upload-artifact@v4
if: always()
with:
name: test-logs
path: ./com.io7m.usq.tests/target/surefire-reports
30 changes: 30 additions & 0 deletions .github/workflows/main.linux.temurin.lts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: main.linux.temurin.lts

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: JDK
uses: actions/setup-java@v4
with:
java-version: 21
distribution: 'temurin'
- name: Build
run: mvn --errors clean verify site
- name: Upload test logs
uses: actions/upload-artifact@v4
if: always()
with:
name: test-logs
path: ./com.io7m.usq.tests/target/surefire-reports
- name: Coverage
uses: codecov/codecov-action@v3
with:
file: com.io7m.usq.tests/target/site/jacoco-aggregate/jacoco.xml
26 changes: 26 additions & 0 deletions .github/workflows/main.windows.temurin.current.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: main.windows.temurin.current

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: JDK
uses: actions/setup-java@v4
with:
java-version: 22
distribution: 'temurin'
- name: Build
run: mvn --errors clean verify site
- name: Upload test logs
uses: actions/upload-artifact@v4
if: always()
with:
name: test-logs
path: ./com.io7m.usq.tests/target/surefire-reports
26 changes: 26 additions & 0 deletions .github/workflows/main.windows.temurin.lts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: main.windows.temurin.lts

on:
push:
branches: [ develop, feature/*, release/* ]
pull_request:
branches: [ develop ]

jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: JDK
uses: actions/setup-java@v4
with:
java-version: 21
distribution: 'temurin'
- name: Build
run: mvn --errors clean verify site
- name: Upload test logs
uses: actions/upload-artifact@v4
if: always()
with:
name: test-logs
path: ./com.io7m.usq.tests/target/surefire-reports
23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
*.glob
*.iml
*.ipr
*.iws
*.vo
*.vok
*.vos
*~
.*.aux
.checkstyle
.classpath
.fslckout
.idea
.lia.cache
.project
.run
.settings
bin
com.io7m.northpike.documentation/src/main/coq/html
out
pom.xml.versionsBackup
target
com.io7m.northpike.tests/src/main/java/com/io7m/northpike/tests/examples/*
15 changes: 15 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
usq
===

[![Maven Central](https://img.shields.io/maven-central/v/com.io7m.usq/com.io7m.usq.svg?style=flat-square)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.io7m.usq%22)
[![Maven Central (snapshot)](https://img.shields.io/nexus/s/com.io7m.usq/com.io7m.usq?server=https%3A%2F%2Fs01.oss.sonatype.org&style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/usq/)
[![Codecov](https://img.shields.io/codecov/c/github/io7m/usq.svg?style=flat-square)](https://codecov.io/gh/io7m/usq)

![com.io7m.usq](./src/site/resources/usq.jpg?raw=true)

| JVM | Platform | Status |
|-----|----------|--------|
| OpenJDK (Temurin) Current | Linux | [![Build (OpenJDK (Temurin) Current, Linux)](https://img.shields.io/github/actions/workflow/status/io7m/usq/main.linux.temurin.current.yml)](https://github.com/io7m/usq/actions?query=workflow%3Amain.linux.temurin.current)|
| OpenJDK (Temurin) LTS | Linux | [![Build (OpenJDK (Temurin) LTS, Linux)](https://img.shields.io/github/actions/workflow/status/io7m/usq/main.linux.temurin.lts.yml)](https://github.com/io7m/usq/actions?query=workflow%3Amain.linux.temurin.lts)|
| OpenJDK (Temurin) Current | Windows | [![Build (OpenJDK (Temurin) Current, Windows)](https://img.shields.io/github/actions/workflow/status/io7m/usq/main.windows.temurin.current.yml)](https://github.com/io7m/usq/actions?query=workflow%3Amain.windows.temurin.current)|
| OpenJDK (Temurin) LTS | Windows | [![Build (OpenJDK (Temurin) LTS, Windows)](https://img.shields.io/github/actions/workflow/status/io7m/usq/main.windows.temurin.lts.yml)](https://github.com/io7m/usq/actions?query=workflow%3Amain.windows.temurin.lts)|
8 changes: 8 additions & 0 deletions checkstyle-filter.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE suppressions PUBLIC
"-//Checkstyle//DTD SuppressionFilter Configuration 1.0//EN"
"https://checkstyle.org/dtds/suppressions_1_0.dtd">

<suppressions>
</suppressions>
14 changes: 14 additions & 0 deletions checkstyle-suppressions-1.0.dtd
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<!-- Add the following to any file that is to be validated against this DTD:

<!DOCTYPE suppressions PUBLIC
"-//Checkstyle//DTD SuppressionFilter Configuration 1.0//EN"
"https://checkstyle.org/dtds/suppressions_1_0.dtd">
-->

<!ELEMENT suppressions (suppress*)>

<!ELEMENT suppress EMPTY>
<!ATTLIST suppress files CDATA #REQUIRED
checks CDATA #REQUIRED
lines CDATA #IMPLIED
columns CDATA #IMPLIED>
41 changes: 41 additions & 0 deletions com.io7m.usq.api/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>com.io7m.usq</groupId>
<artifactId>com.io7m.usq</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>

<artifactId>com.io7m.usq.api</artifactId>
<version>0.0.1-SNAPSHOT</version>

<packaging>jar</packaging>
<name>com.io7m.usq.api</name>
<description>Unsupervised queue (API)</description>
<url>https://www.io7m.com/software/usq/</url>

<dependencies>
<dependency>
<groupId>com.io7m.seltzer</groupId>
<artifactId>com.io7m.seltzer.api</artifactId>
</dependency>

<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.annotation.versioning</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.annotation.bundle</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>

</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/*
* Copyright © 2024 Mark Raynsford <[email protected]> https://www.io7m.com
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/


package com.io7m.usq.api;

import java.util.Objects;

/**
* A message was enqueued to the given queue.
*
* @param queue The queue
* @param message The message
*/

public record USQEventMessageEnqueued(
String queue,
USQMessage message)
implements USQEventType
{
/**
* A message was enqueued to the given queue.
*
* @param queue The queue
* @param message The message
*/

public USQEventMessageEnqueued
{
Objects.requireNonNull(queue, "queue");
Objects.requireNonNull(message, "message");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/*
* Copyright © 2024 Mark Raynsford <[email protected]> https://www.io7m.com
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/


package com.io7m.usq.api;

import java.util.Objects;

/**
* Message expiration failed.
*
* @param exception The exception
*/

public record USQEventMessageExpirationFailed(
Throwable exception)
implements USQEventType
{
/**
* Message expiration failed.
*
* @param exception The exception
*/

public USQEventMessageExpirationFailed
{
Objects.requireNonNull(exception, "exception");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
/*
* Copyright © 2024 Mark Raynsford <[email protected]> https://www.io7m.com
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
* SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/


package com.io7m.usq.api;

import java.util.Objects;
import java.util.UUID;

/**
* A message was enqueued to the given queue.
*
* @param messageId The message
*/

public record USQEventMessageExpired(
UUID messageId)
implements USQEventType
{
/**
* A message was enqueued to the given queue.
*
* @param messageId The message
*/

public USQEventMessageExpired
{
Objects.requireNonNull(messageId, "messageId");
}
}
Loading

0 comments on commit 5163a2f

Please sign in to comment.