Package com.easydesk.notification.util
Class EmailLink
java.lang.Object
com.easydesk.notification.util.EmailLink
메일 본문 안에 들어가는 URL(또는
<a href>) 을 만드는 fluent builder.
예전에는 Turbine pull tool(InitableRecyclable)로 pool 에서 빌려 썼지만, 지금은 평범한 객체이고
EmailLinkFactory 가 메일 하나(수신자 하나)마다 새로 만들어 준다. 따라서 thread-safe 하지 않다 -
한 번의 render 안에서만 쓸 것.
scheme/port/scriptName 은 더 이상 Module 에서 읽지 않고 NotificationMailProperties.Link 설정을 쓴다
(현재 Module 에 해당 getter 가 없다). 또한 Turbine 의 path-info 방식(/template/ViewItem.html)은
그대로 유지했다 - 웹쪽 URL 규칙이 바뀌었다면 setPage(String, Module) 만 고치면 된다.
- Author:
- Youncho Cho
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddPathInfo(String name, boolean value) addPathInfo(String name, double value) addPathInfo(String name, int value) addPathInfo(String name, long value) addPathInfo(String name, Object value) addPathInfo(String name, String value) addQueryData(String name, Object value) addQueryData(String name, String value) getItemIdLink(Item item) item 의 상세 화면으로 가는 linkintgetUrl()템플릿에서${link.url}로 쓰기 위한 getter (HTML 이 아닌 순수 URL).booleanbooleanmodule 정보(cm파라미터)를 URL 에 붙이지 않는다.voidrefresh()다음 link 를 만들기 위해 상태를 비운다 (module 은 유지). toString() 이 끝나면 자동으로 호출된다.voidvoidremovePathInfo(String name) voidremoveQueryData(String name) setAttributeText(String attributeText) 예전에는 module 종류(category/itemBank/userGroup)에 따라 SelectModule/ItemBank/GroupHome 으로 갈렸지만 현재 Module 에는 그 구분 메소드가 없다.setPathInfo(String key, String value) setQueryData(String key, Object value) setRelative(boolean relative) true 면 scheme://host:port 를 생략한 상대 경로로 만든다.toString()label 이 있으면<a href>HTML, 없으면 URL 문자열.
-
Field Details
-
HTTP
- See Also:
-
HTTPS
- See Also:
-
TEMPLATE
예전 TurbineConstants.TEMPLATE / ACTION 값- See Also:
-
ACTION
- See Also:
-
-
Constructor Details
-
EmailLink
-
-
Method Details
-
getModule
-
setModule
-
refresh
public void refresh()다음 link 를 만들기 위해 상태를 비운다 (module 은 유지). toString() 이 끝나면 자동으로 호출된다. -
addQueryData
-
addQueryData
-
setQueryData
-
removeQueryData
-
addPathInfo
-
addPathInfo
-
addPathInfo
-
addPathInfo
-
addPathInfo
-
addPathInfo
-
setPathInfo
-
removePathInfo
public void removePathInfo() -
removePathInfo
-
hasPathInfo
public boolean hasPathInfo() -
hasQueryData
public boolean hasQueryData() -
setLabel
-
setAttributeText
-
omitModule
module 정보(cm파라미터)를 URL 에 붙이지 않는다. -
setRelative
true 면 scheme://host:port 를 생략한 상대 경로로 만든다. -
setPage
-
setPage
예전에는 module 종류(category/itemBank/userGroup)에 따라 SelectModule/ItemBank/GroupHome 으로 갈렸지만 현재 Module 에는 그 구분 메소드가 없다. 일단 index.html 로 보낸다 - 필요하면 여기서 분기할 것. -
setPage
-
setAction
-
getItemIdLink
item 의 상세 화면으로 가는 link- Throws:
Exception
-
getServerName
-
getServerPort
public int getServerPort() -
getServerScheme
-
getScriptName
-
toString
label 이 있으면<a href>HTML, 없으면 URL 문자열. 호출 후 상태는 refresh() 된다. -
getUrl
템플릿에서${link.url}로 쓰기 위한 getter (HTML 이 아닌 순수 URL).
-