ADD basic video player with Hilla

This commit is contained in:
dylandefaoite
2025-05-15 12:09:22 +02:00
parent f6086cdf53
commit 6eb13dc7a8
3 changed files with 44 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
import {useState} from "react";
import {UploadService} from "Frontend/generated/endpoints";
export default function main() {
const [uuid, setUuid] = useState<String | undefined> (undefined);
const [file, setFile] = useState<File | null>(null);
function press() {
if (file) {
UploadService.upload(file)
.then(uuid => setUuid(uuid))
.catch(e => console.error(e));
}
}
return (
<div>
<video width={640} height={480} controls>
{ (uuid) &&
<source src={`/download/input/${uuid}`} />
}
</video>
<input
type="file"
onChange={(e) => {
const selected = e.target.files?.[0] ?? null;
setFile(selected);
}}
/>
<button onClick={() => press()}>Upload</button>
</div>
)
}

View File

@@ -4,6 +4,8 @@ import com.ddf.vodsystem.entities.JobStatus;
import com.ddf.vodsystem.exceptions.JobNotFinished;
import com.ddf.vodsystem.exceptions.JobNotFound;
import com.ddf.vodsystem.entities.Job;
import com.vaadin.flow.server.auth.AnonymousAllowed;
import com.vaadin.hilla.Endpoint;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.Resource;
@@ -12,6 +14,8 @@ import org.springframework.stereotype.Service;
import java.io.File;
@Service
@Endpoint
@AnonymousAllowed
public class DownloadService {
private final JobService jobService;

View File

@@ -1,6 +1,8 @@
package com.ddf.vodsystem.services;
import com.ddf.vodsystem.entities.Job;
import com.vaadin.flow.server.auth.AnonymousAllowed;
import com.vaadin.hilla.Endpoint;
import jakarta.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -21,6 +23,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Service
@Endpoint
@AnonymousAllowed
public class UploadService {
private static final Logger logger = LoggerFactory.getLogger(UploadService.class);