From 68252bf0d6cc1f67d1bc199d4b6e81998ba15694 Mon Sep 17 00:00:00 2001 From: chxlay Date: Wed, 19 Mar 2025 10:47:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=BB=E9=99=A4=20lombok=20=E7=9A=84?= =?UTF-8?q?=E6=B3=A8=E8=A7=A3@Builder,@Builder=20=E6=9C=AC=E8=BA=AB?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=8C=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=20=E9=80=9A=E8=BF=87=20=E6=9E=84=E5=BB=BA=E5=99=A8?= =?UTF-8?q?=E6=9E=84=E4=BB=B6=E7=9A=84=20GenerateParam=20=E5=AE=9E?= =?UTF-8?q?=E4=BE=8B=E4=B8=A2=E5=A4=B1=E9=BB=98=E8=AE=A4=E5=80=BC=20?= =?UTF-8?q?=E6=94=B9=E7=94=A8=E6=89=8B=E5=8A=A8=E7=BC=96=E5=86=99=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=E5=99=A8=20Builder=20,=E5=AE=8C=E6=88=90=E5=AE=9E?= =?UTF-8?q?=E4=BE=8B=E7=9A=84=E6=9E=84=E5=BB=BA=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/model/dto/GenerateParam.java | 95 ++++++++++++------- 1 file changed, 60 insertions(+), 35 deletions(-) diff --git a/src/main/java/cloud/tianai/captcha/generator/common/model/dto/GenerateParam.java b/src/main/java/cloud/tianai/captcha/generator/common/model/dto/GenerateParam.java index db26453..1637e80 100644 --- a/src/main/java/cloud/tianai/captcha/generator/common/model/dto/GenerateParam.java +++ b/src/main/java/cloud/tianai/captcha/generator/common/model/dto/GenerateParam.java @@ -43,16 +43,6 @@ public class GenerateParam { */ private AnyMap param = new AnyMap(); - public static GenerateParam of() { - return new GenerateParam(); - } - - public static GenerateParam of(String type) { - GenerateParam generateParam = new GenerateParam(); - generateParam.type = type; - return generateParam; - } - public void addParam(String key, Object value) { doGetOrCreateParam().put(key, value); } @@ -100,34 +90,69 @@ public class GenerateParam { return (T) getOrDefault(paramKey.getKey(), defaultValue); } - public GenerateParam backgroundFormatName(String backgroundFormatName) { - this.backgroundFormatName = backgroundFormatName; - return this; + public static Builder builder() { + return new Builder(); } - public GenerateParam templateFormatName(String templateFormatName) { - this.templateFormatName = templateFormatName; - return this; + public static class Builder { + private String backgroundFormatName = "jpeg"; + private String templateFormatName = "png"; + private Boolean obfuscate = false; + private String type = CaptchaTypeConstant.SLIDER; + private String backgroundImageTag; + private String templateImageTag; + private AnyMap param = new AnyMap(); + + private Builder() { + } + + public Builder backgroundFormatName(String backgroundFormatName) { + this.backgroundFormatName = backgroundFormatName; + return this; + } + + public Builder templateFormatName(String templateFormatName) { + this.templateFormatName = templateFormatName; + return this; + } + + public Builder obfuscate(Boolean obfuscate) { + this.obfuscate = obfuscate; + return this; + } + + public Builder type(String type) { + this.type = type; + return this; + } + + public Builder backgroundImageTag(String backgroundImageTag) { + this.backgroundImageTag = backgroundImageTag; + return this; + } + + public Builder templateImageTag(String templateImageTag) { + this.templateImageTag = templateImageTag; + return this; + } + + public Builder param(AnyMap param) { + this.param = param; + return this; + } + + public GenerateParam build() { + GenerateParam generateParam = new GenerateParam(); + generateParam.backgroundFormatName = backgroundFormatName; + generateParam.templateFormatName = templateFormatName; + generateParam.obfuscate = obfuscate; + generateParam.type = type; + generateParam.backgroundImageTag = backgroundImageTag; + generateParam.templateImageTag = templateImageTag; + generateParam.param = param; + return generateParam; + } } - public GenerateParam obfuscate(Boolean obfuscate) { - this.obfuscate = obfuscate; - return this; - } - - public GenerateParam backgroundImageTag(String backgroundImageTag) { - this.backgroundImageTag = backgroundImageTag; - return this; - } - - public GenerateParam templateImageTag(String templateImageTag) { - this.templateImageTag = templateImageTag; - return this; - } - - public GenerateParam param(AnyMap param) { - this.param = param; - return this; - } }