Change package identity

This commit is contained in:
2025-12-11 13:16:44 +01:00
parent c30a220ab8
commit 8bae1b6b8c
49 changed files with 110 additions and 110 deletions

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app;
package dev.kruhlmann.imgfloat;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import java.util.Arrays;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.Components;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import java.net.URI;
import java.util.ArrayList;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import java.util.ArrayList;
import java.util.List;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import jakarta.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Value;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import java.io.IOException;
import java.io.ByteArrayInputStream;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import java.util.ArrayList;
import java.util.HashMap;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.messaging.simp.config.MessageBrokerRegistry;

View File

@@ -1,14 +1,14 @@
package com.imgfloat.app.controller;
package dev.kruhlmann.imgfloat.controller;
import com.imgfloat.app.model.AdminRequest;
import com.imgfloat.app.model.AssetView;
import com.imgfloat.app.model.CanvasSettingsRequest;
import com.imgfloat.app.model.PlaybackRequest;
import com.imgfloat.app.model.TransformRequest;
import com.imgfloat.app.model.TwitchUserProfile;
import com.imgfloat.app.model.VisibilityRequest;
import com.imgfloat.app.service.ChannelDirectoryService;
import com.imgfloat.app.service.TwitchUserLookupService;
import dev.kruhlmann.imgfloat.model.AdminRequest;
import dev.kruhlmann.imgfloat.model.AssetView;
import dev.kruhlmann.imgfloat.model.CanvasSettingsRequest;
import dev.kruhlmann.imgfloat.model.PlaybackRequest;
import dev.kruhlmann.imgfloat.model.TransformRequest;
import dev.kruhlmann.imgfloat.model.TwitchUserProfile;
import dev.kruhlmann.imgfloat.model.VisibilityRequest;
import dev.kruhlmann.imgfloat.service.ChannelDirectoryService;
import dev.kruhlmann.imgfloat.service.TwitchUserLookupService;
import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import jakarta.validation.Valid;
import org.slf4j.Logger;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app.controller;
package dev.kruhlmann.imgfloat.controller;
import com.imgfloat.app.service.ChannelDirectoryService;
import dev.kruhlmann.imgfloat.service.ChannelDirectoryService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

View File

@@ -1,7 +1,7 @@
package com.imgfloat.app.controller;
package dev.kruhlmann.imgfloat.controller;
import com.imgfloat.app.service.ChannelDirectoryService;
import com.imgfloat.app.service.GitVersionService;
import dev.kruhlmann.imgfloat.service.ChannelDirectoryService;
import dev.kruhlmann.imgfloat.service.VersionService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.oauth2.client.authentication.OAuth2AuthenticationToken;
@@ -15,11 +15,11 @@ import static org.springframework.http.HttpStatus.FORBIDDEN;
public class ViewController {
private static final Logger LOG = LoggerFactory.getLogger(ViewController.class);
private final ChannelDirectoryService channelDirectoryService;
private final GitVersionService gitVersionService;
private final VersionService versionService;
public ViewController(ChannelDirectoryService channelDirectoryService, GitVersionService gitVersionService) {
public ViewController(ChannelDirectoryService channelDirectoryService, VersionService versionService) {
this.channelDirectoryService = channelDirectoryService;
this.gitVersionService = gitVersionService;
this.versionService = versionService;
}
@org.springframework.web.bind.annotation.GetMapping("/")
@@ -32,7 +32,7 @@ public class ViewController {
model.addAttribute("adminChannels", channelDirectoryService.adminChannelsFor(login));
return "dashboard";
}
model.addAttribute("gitVersion", gitVersionService.getVersion());
model.addAttribute("version", versionService.getVersion());
return "index";
}

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
import jakarta.validation.constraints.NotBlank;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
import jakarta.persistence.Column;
import jakarta.persistence.Entity;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
public class AssetEvent {
public enum Type {

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
/**
* Represents a partial update for an {@link Asset}. Only the fields that changed

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
import java.time.Instant;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
import jakarta.validation.constraints.Positive;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
import jakarta.persistence.CollectionTable;
import jakarta.persistence.Column;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
public class PlaybackRequest {
private Boolean play;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.DecimalMin;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
/**
* Minimal Twitch user details used for rendering avatars and display names.

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.model;
package dev.kruhlmann.imgfloat.model;
public class VisibilityRequest {
private boolean hidden;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app.repository;
package dev.kruhlmann.imgfloat.repository;
import com.imgfloat.app.model.Asset;
import dev.kruhlmann.imgfloat.model.Asset;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app.repository;
package dev.kruhlmann.imgfloat.repository;
import com.imgfloat.app.model.Channel;
import dev.kruhlmann.imgfloat.model.Channel;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app.service;
package dev.kruhlmann.imgfloat.service;
import com.imgfloat.app.service.media.AssetContent;
import dev.kruhlmann.imgfloat.service.media.AssetContent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;

View File

@@ -1,16 +1,16 @@
package com.imgfloat.app.service;
package dev.kruhlmann.imgfloat.service;
import com.imgfloat.app.model.Asset;
import com.imgfloat.app.model.AssetEvent;
import com.imgfloat.app.model.AssetPatch;
import com.imgfloat.app.model.Channel;
import com.imgfloat.app.model.AssetView;
import com.imgfloat.app.model.CanvasSettingsRequest;
import com.imgfloat.app.model.PlaybackRequest;
import com.imgfloat.app.model.TransformRequest;
import com.imgfloat.app.model.VisibilityRequest;
import com.imgfloat.app.repository.AssetRepository;
import com.imgfloat.app.repository.ChannelRepository;
import dev.kruhlmann.imgfloat.model.Asset;
import dev.kruhlmann.imgfloat.model.AssetEvent;
import dev.kruhlmann.imgfloat.model.AssetPatch;
import dev.kruhlmann.imgfloat.model.Channel;
import dev.kruhlmann.imgfloat.model.AssetView;
import dev.kruhlmann.imgfloat.model.CanvasSettingsRequest;
import dev.kruhlmann.imgfloat.model.PlaybackRequest;
import dev.kruhlmann.imgfloat.model.TransformRequest;
import dev.kruhlmann.imgfloat.model.VisibilityRequest;
import dev.kruhlmann.imgfloat.repository.AssetRepository;
import dev.kruhlmann.imgfloat.repository.ChannelRepository;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.messaging.simp.SimpMessagingTemplate;
@@ -26,10 +26,10 @@ import java.util.List;
import java.util.Locale;
import java.util.Optional;
import com.imgfloat.app.service.media.AssetContent;
import com.imgfloat.app.service.media.MediaDetectionService;
import com.imgfloat.app.service.media.MediaOptimizationService;
import com.imgfloat.app.service.media.OptimizedAsset;
import dev.kruhlmann.imgfloat.service.media.AssetContent;
import dev.kruhlmann.imgfloat.service.media.MediaDetectionService;
import dev.kruhlmann.imgfloat.service.media.MediaOptimizationService;
import dev.kruhlmann.imgfloat.service.media.OptimizedAsset;
import static org.springframework.http.HttpStatus.BAD_REQUEST;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app.service;
package dev.kruhlmann.imgfloat.service;
import com.imgfloat.app.model.TwitchUserProfile;
import dev.kruhlmann.imgfloat.model.TwitchUserProfile;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.slf4j.Logger;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.service;
package dev.kruhlmann.imgfloat.service;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -9,11 +9,11 @@ import java.io.IOException;
import java.io.InputStreamReader;
@Component
public class GitVersionService {
private static final Logger LOG = LoggerFactory.getLogger(GitVersionService.class);
public class VersionService {
private static final Logger LOG = LoggerFactory.getLogger(VersionService.class);
private final String version;
public GitVersionService() {
public VersionService() {
this.version = resolveVersion();
}
@@ -22,20 +22,20 @@ public class GitVersionService {
}
private String resolveVersion() {
String gitDescribeVersion = tryGitDescribe();
if (gitDescribeVersion != null) {
return gitDescribeVersion;
}
String manifestVersion = getClass().getPackage().getImplementationVersion();
if (manifestVersion != null && !manifestVersion.isBlank()) {
return manifestVersion;
}
String gitDescribeVersion = getGitVersionString();
if (gitDescribeVersion != null) {
return "git-" + gitDescribeVersion;
}
return "unknown";
}
private String tryGitDescribe() {
private String getGitVersionString() {
Process process = null;
try {
process = new ProcessBuilder("git", "describe", "--tags", "--always")

View File

@@ -1,3 +1,3 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
public record AssetContent(byte[] bytes, String mediaType) { }

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
import org.jcodec.api.FrameGrab;
import org.jcodec.api.JCodecException;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
import org.jcodec.api.FrameGrab;
import org.jcodec.api.JCodecException;

View File

@@ -1,3 +1,3 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
public record OptimizedAsset(byte[] bytes, String mediaType, int width, int height, byte[] previewBytes) { }

View File

@@ -9,7 +9,7 @@
"dist:mac": "electron-builder --mac"
},
"build": {
"appId": "com.imgfloat.overlay",
"appId": "dev.kruhlmann.imgfloat.overlay",
"productName": "Imgfloat",
"files": [
"app.js"

View File

@@ -32,7 +32,7 @@
<footer class="landing-meta">
<div class="build-chip">
<span class="muted">Build</span>
<span class="version-badge" th:text="${gitVersion}">unknown</span>
<span class="version-badge" th:text="${version}">unknown</span>
</div>
</footer>
</div>

View File

@@ -1,7 +1,7 @@
package com.imgfloat.app;
package dev.kruhlmann.imgfloat;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.imgfloat.app.model.VisibilityRequest;
import dev.kruhlmann.imgfloat.model.VisibilityRequest;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;

View File

@@ -1,7 +1,7 @@
package com.imgfloat.app;
package dev.kruhlmann.imgfloat;
import com.imgfloat.app.model.Channel;
import com.imgfloat.app.repository.ChannelRepository;
import dev.kruhlmann.imgfloat.model.Channel;
import dev.kruhlmann.imgfloat.repository.ChannelRepository;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;

View File

@@ -1,17 +1,17 @@
package com.imgfloat.app;
package dev.kruhlmann.imgfloat;
import com.imgfloat.app.model.TransformRequest;
import com.imgfloat.app.model.VisibilityRequest;
import com.imgfloat.app.model.Asset;
import com.imgfloat.app.model.AssetView;
import com.imgfloat.app.model.Channel;
import com.imgfloat.app.repository.AssetRepository;
import com.imgfloat.app.repository.ChannelRepository;
import com.imgfloat.app.service.ChannelDirectoryService;
import com.imgfloat.app.service.AssetStorageService;
import com.imgfloat.app.service.media.MediaDetectionService;
import com.imgfloat.app.service.media.MediaOptimizationService;
import com.imgfloat.app.service.media.MediaPreviewService;
import dev.kruhlmann.imgfloat.model.TransformRequest;
import dev.kruhlmann.imgfloat.model.VisibilityRequest;
import dev.kruhlmann.imgfloat.model.Asset;
import dev.kruhlmann.imgfloat.model.AssetView;
import dev.kruhlmann.imgfloat.model.Channel;
import dev.kruhlmann.imgfloat.repository.AssetRepository;
import dev.kruhlmann.imgfloat.repository.ChannelRepository;
import dev.kruhlmann.imgfloat.service.ChannelDirectoryService;
import dev.kruhlmann.imgfloat.service.AssetStorageService;
import dev.kruhlmann.imgfloat.service.media.MediaDetectionService;
import dev.kruhlmann.imgfloat.service.media.MediaOptimizationService;
import dev.kruhlmann.imgfloat.service.media.MediaPreviewService;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app;
package dev.kruhlmann.imgfloat;
import com.imgfloat.app.config.TwitchCredentialsValidator;
import dev.kruhlmann.imgfloat.config.TwitchCredentialsValidator;
import org.junit.jupiter.api.Test;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.context.ConfigurableApplicationContext;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import org.junit.jupiter.api.Test;
import org.springframework.http.RequestEntity;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import java.net.URI;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.config;
package dev.kruhlmann.imgfloat.config;
import static org.assertj.core.api.Assertions.assertThat;
import static org.springframework.test.web.client.match.MockRestRequestMatchers.header;

View File

@@ -1,6 +1,6 @@
package com.imgfloat.app.service;
package dev.kruhlmann.imgfloat.service;
import com.imgfloat.app.service.media.AssetContent;
import dev.kruhlmann.imgfloat.service.media.AssetContent;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
import org.junit.jupiter.api.Test;
import org.springframework.mock.web.MockMultipartFile;

View File

@@ -1,4 +1,4 @@
package com.imgfloat.app.service.media;
package dev.kruhlmann.imgfloat.service.media;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;