summaryrefslogtreecommitdiff
path: root/internal/entry
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-10-17 10:38:40 +0300
committerPaul Buetow <paul@buetow.org>2024-10-17 10:38:40 +0300
commit563ea5dbaaa77e59939812d6825d54cf829db8eb (patch)
tree1518d99868e86357f4ae81c0946f209adad4d8c1 /internal/entry
parenta66b2114ee9fb9078d6f3c12566d7178e0662903 (diff)
implement sizeLimit per platform
Diffstat (limited to 'internal/entry')
-rw-r--r--internal/entry/entry.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/internal/entry/entry.go b/internal/entry/entry.go
index 5a9c0fb..e1d9696 100644
--- a/internal/entry/entry.go
+++ b/internal/entry/entry.go
@@ -80,6 +80,18 @@ func (e Entry) Content() (string, error) {
return string(bytes), err
}
+func (e Entry) ContentWithLimit(sizeLimit int) (string, error) {
+ content, err := e.Content()
+ if err != nil {
+ return "", err
+ }
+ if len(content) > sizeLimit {
+ return "", fmt.Errorf("entry content exceeds size limit: %d > %d: %v",
+ len(content), sizeLimit, e)
+ }
+ return content, nil
+}
+
func (e *Entry) MarkPosted() error {
if e.State != Queued {
return errors.New("entry is not queued")