diff --git a/1-Adapter/src/main/java/cli/link/LinkCliAdapter.java b/1-Adapter/src/main/java/cli/link/LinkCliAdapter.java new file mode 100644 index 0000000..a6a3ee7 --- /dev/null +++ b/1-Adapter/src/main/java/cli/link/LinkCliAdapter.java @@ -0,0 +1,24 @@ +package cli.link; + +import category.CategoryName; +import link.LinkUrl; +import link.LinkUseCase; +import user.Username; + +import java.util.Set; +import java.util.stream.Collectors; + +public class LinkCliAdapter { + + private final LinkUseCase linkUseCase; + + public LinkCliAdapter(LinkUseCase linkUseCase) { + this.linkUseCase = linkUseCase; + } + + public void addLink(String url, Set categoryNames, String creator) { + linkUseCase.addLink(new LinkUrl(url), + categoryNames.stream().map(CategoryName::new).collect(Collectors.toSet()), + new Username(creator)); + } +} diff --git a/1-Adapter/src/main/java/cli/tag/CustomTagsCliAdapter.java b/1-Adapter/src/main/java/cli/tag/CustomTagsCliAdapter.java new file mode 100644 index 0000000..8175d74 --- /dev/null +++ b/1-Adapter/src/main/java/cli/tag/CustomTagsCliAdapter.java @@ -0,0 +1,20 @@ +package cli.tag; + +import tag.CustomTagsUseCase; +import tag.TagName; +import tag.matcherImplementations.CustomTagMatcher; + +public class CustomTagsCliAdapter { + + private final CustomTagsUseCase customTagsUseCase; + + public CustomTagsCliAdapter(CustomTagsUseCase customTagsUseCase) { + this.customTagsUseCase = customTagsUseCase; + } + + public void addCustomTagMatcher(String name, String regexString) { + customTagsUseCase.addCustomTagMatcher(new CustomTagMatcher(new TagName(name), regexString)); + + } + +}