Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MarkdownProcessingResult ¶
MarkdownProcessingResult contains the results of processing a markdown file
type MarkdownRenderer ¶
type MarkdownRenderer interface {
Render(markdown []byte) (*MarkdownProcessingResult, error)
}
MarkdownRenderer defines the interface for converting markdown to HTML.
func NewMarkdownRenderer ¶
func NewMarkdownRenderer() MarkdownRenderer
type MarkdownRendererImpl ¶
type MarkdownRendererImpl struct {
// contains filtered or unexported fields
}
func (*MarkdownRendererImpl) Render ¶
func (r *MarkdownRendererImpl) Render(markdown []byte) (*MarkdownProcessingResult, error)
type PostService ¶
type PostService struct {
// contains filtered or unexported fields
}
func NewPostService ¶
func NewPostService(repo domain.PostRepository, imageRepo domain.ImageRepository, sourceRepo domain.SourceRepository, markdown MarkdownRenderer, mainBranchName string) *PostService
func (*PostService) Close ¶
func (s *PostService) Close() error
Close gracefully shuts down the PostService by cancelling all background workers
func (*PostService) HandlePushEvent ¶
func (s *PostService) HandlePushEvent(evt *github.PushEvent) error
HandlePushEvent processes a GitHub push event and updates posts accordingly This method returns immediately after validating the event and spawning async workers Workers use the service's lifecycle context, not the request context
func (*PostService) SyncRepositoryChanges ¶
func (s *PostService) SyncRepositoryChanges() error
SyncRepositoryChanges syncs posts from recent commits across all branches This catches any changes that happened while the server was offline
Click to show internal directories.
Click to hide internal directories.