from common.file_helpers import get_svc_name
from src.interface.maven_project import MavenProjectInterface
from src.interface.project_with_docker import ProjectWithDockerInterface


class MavenProjectWithDockerInterface(
    MavenProjectInterface, ProjectWithDockerInterface
):
    def build_docker_image(self):
        self._docker_login()
        self._execute_mvn_command("install -DskipTests=true")
        self._save_image()

    def trivy_scan_image(self, custom_args=""):
        super().trivy_scan_image(custom_args="--skip-dirs app")

    @staticmethod
    def _get_image_name():
        return get_svc_name()
