Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Ryo Arima committed Sep 17, 2024
1 parent 13305e5 commit 0989b58
Show file tree
Hide file tree
Showing 20 changed files with 90 additions and 72 deletions.
1 change: 1 addition & 0 deletions cmd/agent/main.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package main
1 change: 1 addition & 0 deletions etc/main.yaml.template
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ Application:
UserEmail: "user1@mail.com"
UserPassword: "secret"
HomeDir: "etc/.mark1"
TemplatesDir: "pkg/client/repository/templates/"

MySQL:
host: 127.0.0.1
Expand Down
1 change: 1 addition & 0 deletions pkg/agent/base.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package agent
Empty file added pkg/agent/controller/.gitkeep
Empty file.
Empty file added pkg/agent/repository/.gitkeep
Empty file.
Empty file.
Empty file.
Empty file.
Empty file added pkg/agent/usecase/.gitkeep
Empty file.
1 change: 1 addition & 0 deletions pkg/client/controller/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package controller
1 change: 1 addition & 0 deletions pkg/client/repository/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package repository
1 change: 1 addition & 0 deletions pkg/client/usecase/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package usecase
6 changes: 6 additions & 0 deletions pkg/config/yaml.go
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,12 @@ type Client struct {
TemplatesDir string `yaml:"TemplatesDir"`
}

type Agent struct {
ServerEndpoint string `yaml:"ServerEndpoint"`
UserEmail string `yaml:"UserEmail"`
UserPassword string `yaml:"UserPassword"`
}

type Application struct {
Server Server `yaml:"Server"`
Client Client `yaml:"Client"`
Expand Down
1 change: 1 addition & 0 deletions pkg/entity/model/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package model
1 change: 1 addition & 0 deletions pkg/entity/request/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package request
1 change: 1 addition & 0 deletions pkg/entity/response/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package response
73 changes: 73 additions & 0 deletions pkg/server/controller/agent_internal.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
package controller

import (
"net/http"

"github.com/gin-gonic/gin"
"github.com/ryo-arima/mark1/pkg/entity/model"
"github.com/ryo-arima/mark1/pkg/entity/request"
"github.com/ryo-arima/mark1/pkg/entity/response"
"github.com/ryo-arima/mark1/pkg/server/repository"
)

type GroupControllerForInternal interface {
GetGroups(c *gin.Context)
CreateGroup(c *gin.Context)
UpdateGroup(c *gin.Context)
DeleteGroup(c *gin.Context)
}

type groupControllerForInternal struct {
GroupRepository repository.GroupRepository
}

func (groupController groupControllerForInternal) GetGroups(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_GET__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
res := groupController.GroupRepository.GetGroups()
c.JSON(http.StatusOK, res)
return
}

func (groupController groupControllerForInternal) CreateGroup(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_CREATE__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
var groupModel model.Groups
res := groupController.GroupRepository.CreateGroup(groupModel)
c.JSON(http.StatusOK, res)
return
}

func (groupController groupControllerForInternal) UpdateGroup(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_UPDATE__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
var groupModel model.Groups
res := groupController.GroupRepository.UpdateGroup(groupModel)
c.JSON(http.StatusOK, res)
return
}

func (groupController groupControllerForInternal) DeleteGroup(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_DELETE__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
var uuid string
res := groupController.GroupRepository.DeleteGroup(uuid)
c.JSON(http.StatusOK, res)
return
}

func NewGroupControllerForInternal(groupRepository repository.GroupRepository) GroupControllerForInternal {
return &groupControllerForInternal{GroupRepository: groupRepository}
}
1 change: 1 addition & 0 deletions pkg/server/controller/agent_private.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package controller
72 changes: 0 additions & 72 deletions pkg/server/controller/group_internal.go
Original file line number Diff line number Diff line change
@@ -1,73 +1 @@
package controller

import (
"net/http"

"github.com/gin-gonic/gin"
"github.com/ryo-arima/mark1/pkg/entity/model"
"github.com/ryo-arima/mark1/pkg/entity/request"
"github.com/ryo-arima/mark1/pkg/entity/response"
"github.com/ryo-arima/mark1/pkg/server/repository"
)

type GroupControllerForInternal interface {
GetGroups(c *gin.Context)
CreateGroup(c *gin.Context)
UpdateGroup(c *gin.Context)
DeleteGroup(c *gin.Context)
}

type groupControllerForInternal struct {
GroupRepository repository.GroupRepository
}

func (groupController groupControllerForInternal) GetGroups(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_GET__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
res := groupController.GroupRepository.GetGroups()
c.JSON(http.StatusOK, res)
return
}

func (groupController groupControllerForInternal) CreateGroup(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_CREATE__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
var groupModel model.Groups
res := groupController.GroupRepository.CreateGroup(groupModel)
c.JSON(http.StatusOK, res)
return
}

func (groupController groupControllerForInternal) UpdateGroup(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_UPDATE__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
var groupModel model.Groups
res := groupController.GroupRepository.UpdateGroup(groupModel)
c.JSON(http.StatusOK, res)
return
}

func (groupController groupControllerForInternal) DeleteGroup(c *gin.Context) {
var groupRequest request.GroupRequest
if err := c.Bind(&groupRequest); err != nil {
c.JSON(http.StatusBadRequest, &response.GroupResponse{Code: "SERVER_CONTROLLER_DELETE__FOR__001", Message: err.Error(), Groups: []response.Group{}})
return
}
var uuid string
res := groupController.GroupRepository.DeleteGroup(uuid)
c.JSON(http.StatusOK, res)
return
}

func NewGroupControllerForInternal(groupRepository repository.GroupRepository) GroupControllerForInternal {
return &groupControllerForInternal{GroupRepository: groupRepository}
}
1 change: 1 addition & 0 deletions pkg/server/repository/agent.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package repository

0 comments on commit 0989b58

Please sign in to comment.