chore: add minimal implementations for all portfolio API endpoints

This commit is contained in:
2025-08-25 23:04:20 +02:00
parent df24350bd3
commit 7f12034174
100 changed files with 2048 additions and 7 deletions

View File

@@ -6,8 +6,8 @@ import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
@SpringBootApplication(scanBasePackages = "com.pablotj")
@EnableJpaRepositories(basePackages = { "com.pablotj.portfolio.infrastructure.persistence.project.repo" })
@EntityScan(basePackages = { "com.pablotj.portfolio.infrastructure.persistence.project.entity" })
@EnableJpaRepositories(basePackages = {"com.pablotj.portfolio.infrastructure.persistence.*.repo"})
@EntityScan(basePackages = {"com.pablotj.portfolio.infrastructure.persistence.*.entity"})
public class PortfolioApplication {
public static void main(String[] args) {

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.about;
import com.pablotj.portfolio.application.about.CreateAboutUseCase;
import com.pablotj.portfolio.application.about.GetAboutUseCase;
import com.pablotj.portfolio.domain.about.port.AboutRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class AboutApplicationConfig {
@Bean
public GetAboutUseCase getAboutUseCase(AboutRepositoryPort repo) {
return new GetAboutUseCase(repo);
}
@Bean
public CreateAboutUseCase createAboutUseCase(AboutRepositoryPort repo) {
return new CreateAboutUseCase(repo);
}
}

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.certification;
import com.pablotj.portfolio.application.certification.CreateCertificationUseCase;
import com.pablotj.portfolio.application.certification.GetCertificationUseCase;
import com.pablotj.portfolio.domain.certification.port.CertificationRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class CertificationApplicationConfig {
@Bean
public GetCertificationUseCase getCertificationUseCase(CertificationRepositoryPort repo) {
return new GetCertificationUseCase(repo);
}
@Bean
public CreateCertificationUseCase createCertificationUseCase(CertificationRepositoryPort repo) {
return new CreateCertificationUseCase(repo);
}
}

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.contact;
import com.pablotj.portfolio.application.contact.CreateContactUseCase;
import com.pablotj.portfolio.application.contact.GetContactUseCase;
import com.pablotj.portfolio.domain.contact.port.ContactRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ContactApplicationConfig {
@Bean
public GetContactUseCase getContactUseCase(ContactRepositoryPort repo) {
return new GetContactUseCase(repo);
}
@Bean
public CreateContactUseCase createContactUseCase(ContactRepositoryPort repo) {
return new CreateContactUseCase(repo);
}
}

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.education;
import com.pablotj.portfolio.application.education.CreateEducationUseCase;
import com.pablotj.portfolio.application.education.GetEducationUseCase;
import com.pablotj.portfolio.domain.education.port.EducationRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class EducationApplicationConfig {
@Bean
public GetEducationUseCase getEducationUseCase(EducationRepositoryPort repo) {
return new GetEducationUseCase(repo);
}
@Bean
public CreateEducationUseCase createEducationUseCase(EducationRepositoryPort repo) {
return new CreateEducationUseCase(repo);
}
}

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.experience;
import com.pablotj.portfolio.application.experience.CreateExperienceUseCase;
import com.pablotj.portfolio.application.experience.GetExperienceUseCase;
import com.pablotj.portfolio.domain.experience.port.ExperienceRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ExperienceApplicationConfig {
@Bean
public GetExperienceUseCase getExperienceUseCase(ExperienceRepositoryPort repo) {
return new GetExperienceUseCase(repo);
}
@Bean
public CreateExperienceUseCase createExperienceUseCase(ExperienceRepositoryPort repo) {
return new CreateExperienceUseCase(repo);
}
}

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.home;
import com.pablotj.portfolio.application.home.CreateHomeUseCase;
import com.pablotj.portfolio.application.home.GetHomeUseCase;
import com.pablotj.portfolio.domain.home.port.HomeRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class HomeApplicationConfig {
@Bean
public GetHomeUseCase getHomeUseCase(HomeRepositoryPort repo) {
return new GetHomeUseCase(repo);
}
@Bean
public CreateHomeUseCase createHomeUseCase(HomeRepositoryPort repo) {
return new CreateHomeUseCase(repo);
}
}

View File

@@ -0,0 +1,21 @@
package com.pablotj.portfolio.bootstrap.skill;
import com.pablotj.portfolio.application.skill.CreateSkillUseCase;
import com.pablotj.portfolio.application.skill.GetSkillUseCase;
import com.pablotj.portfolio.domain.skill.port.SkillRepositoryPort;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class SkillApplicationConfig {
@Bean
public GetSkillUseCase getSkillUseCase(SkillRepositoryPort repo) {
return new GetSkillUseCase(repo);
}
@Bean
public CreateSkillUseCase createSkillUseCase(SkillRepositoryPort repo) {
return new CreateSkillUseCase(repo);
}
}