diff --git a/pom.xml b/pom.xml index 54749ef..18334f8 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 cloud.tianai.captcha tianai-captcha - 1.2.7 + 1.3.1 tianai-captcha 滑块验证码 diff --git a/readme.md b/readme.md index ed99f95..674ad39 100644 --- a/readme.md +++ b/readme.md @@ -24,7 +24,7 @@ cloud.tianai.captcha tianai-captcha - 1.2.7 + 1.3.1 ``` ### 2. 使用 `SliderCaptchaTemplate`获取滑块验证码 @@ -65,9 +65,9 @@ check =sliderCaptchaValidator.checkPercentage(0.2f, percentage); ```java SliderCaptchaResourceManager sliderCaptchaResourceManager = new DefaultSliderCaptchaResourceManager(); -StandardSliderCaptchaTemplate sliderCaptchaTemplate = new StandardSliderCaptchaTemplate(sliderCaptchaResourceManager, true); +StandardSliderCaptchaGenerator sliderCaptchaGenerator = new StandardSliderCaptchaGenerator(sliderCaptchaResourceManager, true); // 生成滑块图片 -SliderCaptchaInfo slideImageInfo = sliderCaptchaTemplate.getSlideImageInfo(GenerateParam.builder() +SliderCaptchaInfo slideImageInfo = sliderCaptchaGenerator.generateSlideImageInfo(GenerateParam.builder() .sliderFormatName("jpeg") .backgroundFormatName("png") // 是否添加混淆滑块 @@ -79,9 +79,9 @@ SliderCaptchaInfo slideImageInfo = sliderCaptchaTemplate.getSlideImageInfo(Gener ```java SliderCaptchaResourceManager sliderCaptchaResourceManager = new DefaultSliderCaptchaResourceManager(); -StandardSliderCaptchaTemplate sliderCaptchaTemplate = new StandardSliderCaptchaTemplate(sliderCaptchaResourceManager, true); +StandardSliderCaptchaGenerator sliderCaptchaGenerator = new StandardSliderCaptchaGenerator(sliderCaptchaResourceManager, true); // 生成滑块图片 -SliderCaptchaInfo slideImageInfo = sliderCaptchaTemplate.getSlideImageInfo(GenerateParam.builder() +SliderCaptchaInfo slideImageInfo = sliderCaptchaGenerator.generateSlideImageInfo(GenerateParam.builder() .sliderFormatName("webp") .backgroundFormatName("webp") // 是否添加混淆滑块 @@ -124,7 +124,7 @@ SliderCaptchaInfo slideImageInfo = sliderCaptchaTemplate.getSlideImageInfo(Gener ```java //为方便快速上手 系统本身自带了一张图片和两套滑块模板,如果不想用系统自带的可以不让它加载系统自带的 // 第二个构造参数设置为false时将不加载默认的图片和模板 - SliderCaptchaTemplate sliderCaptchaTemplate = new DefaultSliderCaptchaTemplate(sliderCaptchaResourceManager, false); + SliderCaptchaGenerator sliderCaptchaTemplate = new StandardSliderCaptchaGenerator(sliderCaptchaResourceManager, false); ``` ### 自定义 `SliderCaptchaValidator` 校验器 @@ -143,7 +143,7 @@ SliderCaptchaInfo slideImageInfo = sliderCaptchaTemplate.getSlideImageInfo(Gener ```java // 实现了 ResourceProvider 后 SliderCaptchaResourceManager sliderCaptchaResourceManager = new DefaultSliderCaptchaResourceManager(); - StandardSliderCaptchaTemplate sliderCaptchaTemplate = new StandardSliderCaptchaTemplate(sliderCaptchaResourceManager, true); + StandardSliderCaptchaGenerator sliderCaptchaGenerator = new StandardSliderCaptchaGenerator(sliderCaptchaResourceManager, true); // 注册 sliderCaptchaResourceManager.registerResourceProvider(new CustomResourceProvider()); ``` @@ -157,9 +157,9 @@ public static void main(String[] args) throws InterruptedException { // 参数三: 出错后 等待xx时间再进行生成 // 参数四: 检查时间间隔 SliderCaptchaResourceManager sliderCaptchaResourceManager = new DefaultSliderCaptchaResourceManager(); - DefaultSliderCaptchaTemplate sliderCaptchaTemplate = new CacheSliderCaptchaTemplate(new StandardSliderCaptchaTemplate(sliderCaptchaResourceManager, true), 10, 1000, 100); + SliderCaptchaGenerator sliderCaptchaGenerator = new CacheSliderCaptchaGenerator(new StandardSliderCaptchaGenerator(sliderCaptchaResourceManager, true), 10, 1000, 100); // 生成滑块图片 - SliderCaptchaInfo slideImageInfo = sliderCaptchaTemplate.getSlideImageInfo(); + SliderCaptchaInfo slideImageInfo = sliderCaptchaGenerator.generateSlideImageInfo(); // 获取背景图片的base64 String backgroundImage = slideImageInfo.getBackgroundImage(); // 获取滑块图片 diff --git a/src/main/java/cloud/tianai/captcha/template/slider/exception/SliderCaptchaException.java b/src/main/java/cloud/tianai/captcha/template/slider/common/exception/SliderCaptchaException.java similarity index 90% rename from src/main/java/cloud/tianai/captcha/template/slider/exception/SliderCaptchaException.java rename to src/main/java/cloud/tianai/captcha/template/slider/common/exception/SliderCaptchaException.java index 8a276de..393d70e 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/exception/SliderCaptchaException.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/common/exception/SliderCaptchaException.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.exception; +package cloud.tianai.captcha.template.slider.common.exception; public class SliderCaptchaException extends RuntimeException{ public SliderCaptchaException() { diff --git a/src/main/java/cloud/tianai/captcha/template/slider/util/CaptchaImageUtils.java b/src/main/java/cloud/tianai/captcha/template/slider/common/util/CaptchaImageUtils.java similarity index 99% rename from src/main/java/cloud/tianai/captcha/template/slider/util/CaptchaImageUtils.java rename to src/main/java/cloud/tianai/captcha/template/slider/common/util/CaptchaImageUtils.java index c60e99a..1063893 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/util/CaptchaImageUtils.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/common/util/CaptchaImageUtils.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.util; +package cloud.tianai.captcha.template.slider.common.util; import lombok.SneakyThrows; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/util/CollectionUtils.java b/src/main/java/cloud/tianai/captcha/template/slider/common/util/CollectionUtils.java similarity index 99% rename from src/main/java/cloud/tianai/captcha/template/slider/util/CollectionUtils.java rename to src/main/java/cloud/tianai/captcha/template/slider/common/util/CollectionUtils.java index 4005af9..58feb38 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/util/CollectionUtils.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/common/util/CollectionUtils.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package cloud.tianai.captcha.template.slider.util; +package cloud.tianai.captcha.template.slider.common.util; import java.util.*; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/util/NamedThreadFactory.java b/src/main/java/cloud/tianai/captcha/template/slider/common/util/NamedThreadFactory.java similarity index 95% rename from src/main/java/cloud/tianai/captcha/template/slider/util/NamedThreadFactory.java rename to src/main/java/cloud/tianai/captcha/template/slider/common/util/NamedThreadFactory.java index 375218d..b5f3d8a 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/util/NamedThreadFactory.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/common/util/NamedThreadFactory.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.util; +package cloud.tianai.captcha.template.slider.common.util; import java.util.concurrent.ThreadFactory; import java.util.concurrent.atomic.AtomicInteger; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/util/ObjectUtils.java b/src/main/java/cloud/tianai/captcha/template/slider/common/util/ObjectUtils.java similarity index 99% rename from src/main/java/cloud/tianai/captcha/template/slider/util/ObjectUtils.java rename to src/main/java/cloud/tianai/captcha/template/slider/common/util/ObjectUtils.java index 858afe0..ed5b257 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/util/ObjectUtils.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/common/util/ObjectUtils.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package cloud.tianai.captcha.template.slider.util; +package cloud.tianai.captcha.template.slider.common.util; import java.lang.reflect.Array; import java.util.Arrays; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaGenerator.java b/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaGenerator.java index e5b7229..2ab4ef2 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaGenerator.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaGenerator.java @@ -1,6 +1,9 @@ package cloud.tianai.captcha.template.slider.generator; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.GenerateParam; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.SliderCaptchaInfo; import cloud.tianai.captcha.template.slider.resource.SliderCaptchaResourceManager; +import cloud.tianai.captcha.template.slider.validator.SliderCaptchaValidator; /** * @Author: 天爱有情 @@ -14,25 +17,25 @@ public interface SliderCaptchaGenerator { * * @return SliderCaptchaInfo */ - SliderCaptchaInfo getSlideImageInfo(); + SliderCaptchaInfo generateSlideImageInfo(); /** - * 获取滑块验证码 + * 生成滑块验证码 * * @param targetFormatName jpeg或者webp格式 * @param matrixFormatName png或者webp格式 * @return SliderCaptchaInfo */ - SliderCaptchaInfo getSlideImageInfo(String targetFormatName, String matrixFormatName); + SliderCaptchaInfo generateSlideImageInfo(String targetFormatName, String matrixFormatName); /** - * 获取滑块验证码 + * 生成滑块验证码 * * @param param 生成参数 * @return SliderCaptchaInfo */ - SliderCaptchaInfo getSlideImageInfo(GenerateParam param); + SliderCaptchaInfo generateSlideImageInfo(GenerateParam param); /** * 百分比对比 @@ -40,7 +43,11 @@ public interface SliderCaptchaGenerator { * @param newPercentage 用户百分比 * @param oriPercentage 原百分比 * @return true 成功 false 失败 + *

+ * 废除 , 建议使用 + * @see SliderCaptchaValidator 进行校验 */ + @Deprecated boolean percentageContrast(Float newPercentage, Float oriPercentage); /** diff --git a/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaConstant.java b/src/main/java/cloud/tianai/captcha/template/slider/generator/common/constant/SliderCaptchaConstant.java similarity index 85% rename from src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaConstant.java rename to src/main/java/cloud/tianai/captcha/template/slider/generator/common/constant/SliderCaptchaConstant.java index 4bcd41a..35a6539 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaConstant.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/generator/common/constant/SliderCaptchaConstant.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.generator; +package cloud.tianai.captcha.template.slider.generator.common.constant; /** * @Author: 天爱有情 diff --git a/src/main/java/cloud/tianai/captcha/template/slider/generator/GenerateParam.java b/src/main/java/cloud/tianai/captcha/template/slider/generator/common/model/dto/GenerateParam.java similarity index 87% rename from src/main/java/cloud/tianai/captcha/template/slider/generator/GenerateParam.java rename to src/main/java/cloud/tianai/captcha/template/slider/generator/common/model/dto/GenerateParam.java index b406b86..2382658 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/generator/GenerateParam.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/generator/common/model/dto/GenerateParam.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.generator; +package cloud.tianai.captcha.template.slider.generator.common.model.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaInfo.java b/src/main/java/cloud/tianai/captcha/template/slider/generator/common/model/dto/SliderCaptchaInfo.java similarity index 96% rename from src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaInfo.java rename to src/main/java/cloud/tianai/captcha/template/slider/generator/common/model/dto/SliderCaptchaInfo.java index 725c936..639a232 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/generator/SliderCaptchaInfo.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/generator/common/model/dto/SliderCaptchaInfo.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.generator; +package cloud.tianai.captcha.template.slider.generator.common.model.dto; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/CacheSliderCaptchaGenerator.java b/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/CacheSliderCaptchaGenerator.java index 8fca964..787ea01 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/CacheSliderCaptchaGenerator.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/CacheSliderCaptchaGenerator.java @@ -1,9 +1,9 @@ package cloud.tianai.captcha.template.slider.generator.impl; -import cloud.tianai.captcha.template.slider.generator.GenerateParam; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.GenerateParam; import cloud.tianai.captcha.template.slider.generator.SliderCaptchaGenerator; -import cloud.tianai.captcha.template.slider.generator.SliderCaptchaInfo; -import cloud.tianai.captcha.template.slider.util.NamedThreadFactory; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.SliderCaptchaInfo; +import cloud.tianai.captcha.template.slider.common.util.NamedThreadFactory; import cloud.tianai.captcha.template.slider.resource.SliderCaptchaResourceManager; import lombok.Getter; import lombok.Setter; @@ -71,7 +71,7 @@ public class CacheSliderCaptchaGenerator implements SliderCaptchaGenerator { if (pos.get() >= size) { return; } - SliderCaptchaInfo slideImageInfo = target.getSlideImageInfo(generateParam); + SliderCaptchaInfo slideImageInfo = target.generateSlideImageInfo(generateParam); if (slideImageInfo != null) { boolean addStatus = queue.offer(slideImageInfo); if (addStatus) { @@ -101,17 +101,17 @@ public class CacheSliderCaptchaGenerator implements SliderCaptchaGenerator { @SneakyThrows @Override - public SliderCaptchaInfo getSlideImageInfo() { - return getSlideImageInfo(this.requiredGetCaptcha); + public SliderCaptchaInfo generateSlideImageInfo() { + return generateSlideImageInfo(this.requiredGetCaptcha); } @SneakyThrows - public SliderCaptchaInfo getSlideImageInfo(boolean requiredGetCaptcha) { + public SliderCaptchaInfo generateSlideImageInfo(boolean requiredGetCaptcha) { SliderCaptchaInfo poll = queue.poll(); if (poll == null && requiredGetCaptcha) { log.warn("滑块验证码缓存不足, genParam:{}", generateParam); // 如果池内没数据, 则直接生成 - return target.getSlideImageInfo(generateParam); + return target.generateSlideImageInfo(generateParam); } // 减1 pos.decrementAndGet(); @@ -119,13 +119,13 @@ public class CacheSliderCaptchaGenerator implements SliderCaptchaGenerator { } @Override - public SliderCaptchaInfo getSlideImageInfo(String targetFormatName, String matrixFormatName) { - return target.getSlideImageInfo(targetFormatName, matrixFormatName); + public SliderCaptchaInfo generateSlideImageInfo(String targetFormatName, String matrixFormatName) { + return target.generateSlideImageInfo(targetFormatName, matrixFormatName); } @Override - public SliderCaptchaInfo getSlideImageInfo(GenerateParam param) { - return target.getSlideImageInfo(param); + public SliderCaptchaInfo generateSlideImageInfo(GenerateParam param) { + return target.generateSlideImageInfo(param); } @Override diff --git a/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/StandardSliderCaptchaGenerator.java b/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/StandardSliderCaptchaGenerator.java index 0dea3c6..ee0540d 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/StandardSliderCaptchaGenerator.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/generator/impl/StandardSliderCaptchaGenerator.java @@ -1,11 +1,11 @@ package cloud.tianai.captcha.template.slider.generator.impl; -import cloud.tianai.captcha.template.slider.generator.GenerateParam; -import cloud.tianai.captcha.template.slider.generator.SliderCaptchaConstant; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.GenerateParam; +import cloud.tianai.captcha.template.slider.generator.common.constant.SliderCaptchaConstant; import cloud.tianai.captcha.template.slider.generator.SliderCaptchaGenerator; -import cloud.tianai.captcha.template.slider.generator.SliderCaptchaInfo; -import cloud.tianai.captcha.template.slider.resource.provider.ClassPathResourceProvider; -import cloud.tianai.captcha.template.slider.resource.Resource; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.SliderCaptchaInfo; +import cloud.tianai.captcha.template.slider.resource.impl.provider.ClassPathResourceProvider; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; import cloud.tianai.captcha.template.slider.resource.ResourceStore; import cloud.tianai.captcha.template.slider.resource.SliderCaptchaResourceManager; import lombok.Getter; @@ -21,7 +21,7 @@ import java.io.InputStream; import java.util.*; import java.util.concurrent.ThreadLocalRandom; -import static cloud.tianai.captcha.template.slider.util.CaptchaImageUtils.*; +import static cloud.tianai.captcha.template.slider.common.util.CaptchaImageUtils.*; /** * @Author: 天爱有情 @@ -68,14 +68,14 @@ public class StandardSliderCaptchaGenerator implements SliderCaptchaGenerator { } @Override - public SliderCaptchaInfo getSlideImageInfo() { - return getSlideImageInfo(defaultBgImageType, defaultSliderImageType); + public SliderCaptchaInfo generateSlideImageInfo() { + return generateSlideImageInfo(defaultBgImageType, defaultSliderImageType); } @SneakyThrows @Override - public SliderCaptchaInfo getSlideImageInfo(String backgroundFormatName, String sliderFormatName) { - return getSlideImageInfo(GenerateParam.builder() + public SliderCaptchaInfo generateSlideImageInfo(String backgroundFormatName, String sliderFormatName) { + return generateSlideImageInfo(GenerateParam.builder() .backgroundFormatName(backgroundFormatName) .sliderFormatName(sliderFormatName) .obfuscate(false) @@ -84,7 +84,7 @@ public class StandardSliderCaptchaGenerator implements SliderCaptchaGenerator { @SneakyThrows @Override - public SliderCaptchaInfo getSlideImageInfo(GenerateParam param) { + public SliderCaptchaInfo generateSlideImageInfo(GenerateParam param) { Boolean obfuscate = param.getObfuscate(); Map templateImages = sliderCaptchaResourceManager.randomGetTemplate(); if (templateImages == null || templateImages.isEmpty()) { @@ -174,7 +174,6 @@ public class StandardSliderCaptchaGenerator implements SliderCaptchaGenerator { * @param bufferedImage 图片 * @param formatType 格式化类型 * @return String - * @throws IOException */ public String transform(BufferedImage bufferedImage, String formatType) throws IOException { ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/AbstractResourceProvider.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/AbstractResourceProvider.java similarity index 84% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/provider/AbstractResourceProvider.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/AbstractResourceProvider.java index 00d6f06..2ccd2e6 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/AbstractResourceProvider.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/AbstractResourceProvider.java @@ -1,7 +1,7 @@ -package cloud.tianai.captcha.template.slider.resource.provider; +package cloud.tianai.captcha.template.slider.resource; import cloud.tianai.captcha.template.slider.resource.ResourceProvider; -import cloud.tianai.captcha.template.slider.resource.Resource; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; import java.io.InputStream; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceProvider.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceProvider.java index 9c457bb..00674dd 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceProvider.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceProvider.java @@ -1,5 +1,7 @@ package cloud.tianai.captcha.template.slider.resource; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; + import java.io.InputStream; /** diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceStore.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceStore.java index 03e156b..ad7918d 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceStore.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/ResourceStore.java @@ -1,5 +1,7 @@ package cloud.tianai.captcha.template.slider.resource; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; + import java.util.List; import java.util.Map; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/SliderCaptchaResourceManager.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/SliderCaptchaResourceManager.java index e007d91..22eace4 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/SliderCaptchaResourceManager.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/SliderCaptchaResourceManager.java @@ -1,5 +1,7 @@ package cloud.tianai.captcha.template.slider.resource; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; + import java.io.InputStream; import java.util.List; import java.util.Map; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/Resource.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/common/model/dto/Resource.java similarity index 84% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/Resource.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/common/model/dto/Resource.java index f28ce2a..e2acfb6 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/Resource.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/common/model/dto/Resource.java @@ -1,4 +1,4 @@ -package cloud.tianai.captcha.template.slider.resource; +package cloud.tianai.captcha.template.slider.resource.common.model.dto; import cloud.tianai.captcha.template.slider.resource.ResourceProvider; import lombok.AllArgsConstructor; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/DefaultResourceStore.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/DefaultResourceStore.java similarity index 92% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/DefaultResourceStore.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/impl/DefaultResourceStore.java index b1d9f70..2f8eae1 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/DefaultResourceStore.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/DefaultResourceStore.java @@ -1,4 +1,7 @@ -package cloud.tianai.captcha.template.slider.resource; +package cloud.tianai.captcha.template.slider.resource.impl; + +import cloud.tianai.captcha.template.slider.resource.ResourceStore; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; import java.util.ArrayList; import java.util.Collections; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/DefaultSliderCaptchaResourceManager.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/DefaultSliderCaptchaResourceManager.java similarity index 85% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/DefaultSliderCaptchaResourceManager.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/impl/DefaultSliderCaptchaResourceManager.java index b308fc8..234c002 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/DefaultSliderCaptchaResourceManager.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/DefaultSliderCaptchaResourceManager.java @@ -1,8 +1,12 @@ -package cloud.tianai.captcha.template.slider.resource; +package cloud.tianai.captcha.template.slider.resource.impl; -import cloud.tianai.captcha.template.slider.resource.provider.ClassPathResourceProvider; -import cloud.tianai.captcha.template.slider.resource.provider.FileResourceProvider; -import cloud.tianai.captcha.template.slider.resource.provider.URLResourceProvider; +import cloud.tianai.captcha.template.slider.resource.ResourceProvider; +import cloud.tianai.captcha.template.slider.resource.ResourceStore; +import cloud.tianai.captcha.template.slider.resource.SliderCaptchaResourceManager; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; +import cloud.tianai.captcha.template.slider.resource.impl.provider.ClassPathResourceProvider; +import cloud.tianai.captcha.template.slider.resource.impl.provider.FileResourceProvider; +import cloud.tianai.captcha.template.slider.resource.impl.provider.URLResourceProvider; import java.io.InputStream; import java.util.ArrayList; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/ClassPathResourceProvider.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/ClassPathResourceProvider.java similarity index 80% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/provider/ClassPathResourceProvider.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/ClassPathResourceProvider.java index 459c266..c7dc4fe 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/ClassPathResourceProvider.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/ClassPathResourceProvider.java @@ -1,6 +1,7 @@ -package cloud.tianai.captcha.template.slider.resource.provider; +package cloud.tianai.captcha.template.slider.resource.impl.provider; -import cloud.tianai.captcha.template.slider.resource.Resource; +import cloud.tianai.captcha.template.slider.resource.AbstractResourceProvider; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; import java.io.InputStream; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/FileResourceProvider.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/FileResourceProvider.java similarity index 75% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/provider/FileResourceProvider.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/FileResourceProvider.java index e78befd..ea398cb 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/FileResourceProvider.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/FileResourceProvider.java @@ -1,6 +1,7 @@ -package cloud.tianai.captcha.template.slider.resource.provider; +package cloud.tianai.captcha.template.slider.resource.impl.provider; -import cloud.tianai.captcha.template.slider.resource.Resource; +import cloud.tianai.captcha.template.slider.resource.AbstractResourceProvider; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; import lombok.SneakyThrows; import java.io.FileInputStream; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/URLResourceProvider.java b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/URLResourceProvider.java similarity index 73% rename from src/main/java/cloud/tianai/captcha/template/slider/resource/provider/URLResourceProvider.java rename to src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/URLResourceProvider.java index 5091a4d..13995e7 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/resource/provider/URLResourceProvider.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/resource/impl/provider/URLResourceProvider.java @@ -1,6 +1,7 @@ -package cloud.tianai.captcha.template.slider.resource.provider; +package cloud.tianai.captcha.template.slider.resource.impl.provider; -import cloud.tianai.captcha.template.slider.resource.Resource; +import cloud.tianai.captcha.template.slider.resource.AbstractResourceProvider; +import cloud.tianai.captcha.template.slider.resource.common.model.dto.Resource; import lombok.SneakyThrows; import java.io.InputStream; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaValidator.java b/src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaValidator.java index 9255d9e..6e40446 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaValidator.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaValidator.java @@ -1,6 +1,7 @@ package cloud.tianai.captcha.template.slider.validator; -import cloud.tianai.captcha.template.slider.generator.SliderCaptchaInfo; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.SliderCaptchaInfo; +import cloud.tianai.captcha.template.slider.validator.common.model.dto.SliderCaptchaTrack; import java.util.Map; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaTrack.java b/src/main/java/cloud/tianai/captcha/template/slider/validator/common/model/dto/SliderCaptchaTrack.java similarity index 83% rename from src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaTrack.java rename to src/main/java/cloud/tianai/captcha/template/slider/validator/common/model/dto/SliderCaptchaTrack.java index dd3bdf6..8f3e908 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/validator/SliderCaptchaTrack.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/validator/common/model/dto/SliderCaptchaTrack.java @@ -1,7 +1,5 @@ -package cloud.tianai.captcha.template.slider.validator; +package cloud.tianai.captcha.template.slider.validator.common.model.dto; -import cloud.tianai.captcha.template.slider.util.CollectionUtils; -import cloud.tianai.captcha.template.slider.util.ObjectUtils; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/validator/BasicCaptchaTrackValidator.java b/src/main/java/cloud/tianai/captcha/template/slider/validator/impl/BasicCaptchaTrackValidator.java similarity index 94% rename from src/main/java/cloud/tianai/captcha/template/slider/validator/BasicCaptchaTrackValidator.java rename to src/main/java/cloud/tianai/captcha/template/slider/validator/impl/BasicCaptchaTrackValidator.java index f71e94e..c9c34c8 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/validator/BasicCaptchaTrackValidator.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/validator/impl/BasicCaptchaTrackValidator.java @@ -1,7 +1,8 @@ -package cloud.tianai.captcha.template.slider.validator; +package cloud.tianai.captcha.template.slider.validator.impl; -import cloud.tianai.captcha.template.slider.util.CollectionUtils; -import cloud.tianai.captcha.template.slider.util.ObjectUtils; +import cloud.tianai.captcha.template.slider.common.util.CollectionUtils; +import cloud.tianai.captcha.template.slider.common.util.ObjectUtils; +import cloud.tianai.captcha.template.slider.validator.common.model.dto.SliderCaptchaTrack; import java.util.List; import java.util.Map; diff --git a/src/main/java/cloud/tianai/captcha/template/slider/validator/SimpleSliderCaptchaValidator.java b/src/main/java/cloud/tianai/captcha/template/slider/validator/impl/SimpleSliderCaptchaValidator.java similarity index 91% rename from src/main/java/cloud/tianai/captcha/template/slider/validator/SimpleSliderCaptchaValidator.java rename to src/main/java/cloud/tianai/captcha/template/slider/validator/impl/SimpleSliderCaptchaValidator.java index 8ae893d..c7bf66d 100644 --- a/src/main/java/cloud/tianai/captcha/template/slider/validator/SimpleSliderCaptchaValidator.java +++ b/src/main/java/cloud/tianai/captcha/template/slider/validator/impl/SimpleSliderCaptchaValidator.java @@ -1,7 +1,9 @@ -package cloud.tianai.captcha.template.slider.validator; +package cloud.tianai.captcha.template.slider.validator.impl; -import cloud.tianai.captcha.template.slider.generator.SliderCaptchaInfo; -import cloud.tianai.captcha.template.slider.util.CollectionUtils; +import cloud.tianai.captcha.template.slider.generator.common.model.dto.SliderCaptchaInfo; +import cloud.tianai.captcha.template.slider.common.util.CollectionUtils; +import cloud.tianai.captcha.template.slider.validator.SliderCaptchaValidator; +import cloud.tianai.captcha.template.slider.validator.common.model.dto.SliderCaptchaTrack; import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; diff --git a/src/main/java/example/DecodeTest.java b/src/main/test/java/example/DecodeTest.java similarity index 100% rename from src/main/java/example/DecodeTest.java rename to src/main/test/java/example/DecodeTest.java diff --git a/src/main/java/example/EncodeTest.java b/src/main/test/java/example/EncodeTest.java similarity index 100% rename from src/main/java/example/EncodeTest.java rename to src/main/test/java/example/EncodeTest.java