Compare commits

...

5 Commits

Author SHA1 Message Date
Reeverflow
df838920b6 Init ProcessService 2026-02-08 15:57:44 +01:00
Reeverflow
68b7143fb2 Remove DB entry duplication on POST. StatusENUM in DB to STRING type 2026-02-06 09:05:35 +01:00
Reeverflow
c8993a67d1 StatusEnum DB Indices to Text 2026-02-06 08:49:47 +01:00
Reeverflow
31906f2010 Reverting 2026-02-06 08:30:32 +01:00
Reeverflow
41cb2eb470 add postgres connector 2026-02-05 20:38:36 +01:00
6 changed files with 50 additions and 5 deletions

8
Dockerfile Normal file
View File

@@ -0,0 +1,8 @@
FROM eclipse-temurin:21-jdk
WORKDIR /app
COPY yt-dlp /app
COPY target/video_downloader-0.0.1-SNAPSHOT.jar /app
CMD ["java", "-jar", "/app/video_downloader-0.0.1-SNAPSHOT.jar"]

View File

@@ -1,6 +1,7 @@
package com.example.video_downloader.controllers;
import com.example.video_downloader.dto.SaveNewVideoRequest;
import com.example.video_downloader.entity.Video;
import com.example.video_downloader.repositories.VideoRepository;
import com.example.video_downloader.services.VideoService;
import lombok.Data;
@@ -20,12 +21,12 @@ public class VideoController {
private Long id;
}
@PostMapping(path = "/video")
@PostMapping(path = "/videos")
public Response saveNewVideo(@RequestBody SaveNewVideoRequest request){
videoService.saveNewVideo(request);
Response response = new Response();
response.setId(videoService.saveNewVideo(request).getId());
Video video = videoService.saveNewVideo(request);
response.setId(video.getId());
return response;

View File

@@ -14,8 +14,11 @@ public class Video {
private Long id;
private String url;
private String ytld;
private String ytdl;
private String ytMetaData;
@Enumerated(EnumType.STRING)
private StatusEnum status;
private String fullPath;
}

View File

@@ -0,0 +1,29 @@
package com.example.video_downloader.services;
import jakarta.annotation.PostConstruct;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
@Service
public class ProcessService {
@PostConstruct
public void init() throws InterruptedException, IOException {
System.out.println("Init...");
ProcessBuilder builder = new ProcessBuilder("/app/yt-dlp");
Process process = builder.start();
process.waitFor();
String text = new String(process.getInputStream().readAllBytes(), StandardCharsets.UTF_8);
String text2 = new String(process.getErrorStream().readAllBytes(), StandardCharsets.UTF_8);
System.out.println(text);
System.out.println(text2);
System.out.println("Marker...");
}
}

View File

@@ -1 +1,5 @@
spring.application.name=video_downloader
spring.datasource.url = jdbc:postgresql://localhost:5432/videos
spring.datasource.username = postgres
spring.datasource.password = 5995
spring.jpa.hibernate.ddl-auto = update

BIN
yt-dlp Normal file

Binary file not shown.