Package com.simplicite.util.tools
Class SocialTool
- java.lang.Object
-
- com.simplicite.util.tools.SocialTool
-
public class SocialTool extends java.lang.Object
Social tool
This class only provides static variables and methods
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
FOLLOW_ACCEPTED
Follow acceptedstatic java.lang.String
FOLLOW_DENIED
Follow refusedstatic java.lang.String
FOLLOW_REQUEST
Follow request
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static SocialPost.Author
accept(Grant g, java.lang.String followerId)
Accept to be followedstatic java.util.Map<java.lang.String,java.lang.Long>
countAuditPosts()
Count opened posts for quditstatic long
countFollows(Grant g, boolean followed, java.lang.String status)
static long
countPosts(Grant g, java.lang.String target, java.lang.String rowId, java.lang.String authorId, boolean act, boolean audit)
Count postsstatic void
delete(Grant g, java.lang.String id)
Delete a message (by the owner only)static void
deleteAudit(java.util.Map<java.lang.String,java.lang.String> map)
Delete audit messagesstatic void
deleteMessage(java.lang.String filter)
Delete messagestatic SocialPost.Author
deny(Grant g, java.lang.String followerId)
Deny to be followedstatic SocialPost.Author
follow(Grant g, java.lang.String followedId)
Request to follow someonestatic SocialPost
get(Grant g, java.lang.String id)
Get a poststatic java.lang.String
getDesignerId()
static void
like(Grant g, java.lang.String id)
Like a messagestatic void
notification(Grant g, java.lang.String message, java.lang.String author, java.lang.String target, java.lang.String id)
Send a notification to \@login mentioned in message.static void
post(Grant g, java.lang.String message, boolean pub)
Post a new messagestatic void
post(Grant g, java.lang.String message, ObjectDB target)
Post a new messagestatic java.lang.String
post(Grant g, java.lang.String id, java.lang.String message, boolean pub, java.lang.String target, java.lang.String rowId)
Post or update a message (by the owner only)static void
post(Grant g, java.lang.String type, java.lang.String author, ObjectDB target)
Post a new public activity on objectstatic void
post(Grant g, java.lang.String type, java.lang.String author, ObjectDB target, boolean async)
Post a new public activity on objectstatic java.lang.String
post(Grant g, java.lang.String userId, java.lang.String id, java.lang.String message, boolean pub, java.lang.String target, java.lang.String rowId, java.lang.String level, java.lang.String status)
Post or update a message (by the owner only)static java.lang.String
postAudit(java.lang.String level, java.lang.String msg, java.lang.String object, java.lang.String rowId)
Post one audit for designersstatic java.util.List<SocialPost>
search(Grant g, java.lang.String target, java.lang.String rowId, int page, boolean act, boolean audit, java.lang.String level)
Search postsstatic java.util.Map<java.lang.String,java.lang.String>
searchAudit(java.lang.String msg)
Search audit posts from designerstatic java.util.List<SocialPost.Author>
searchAuthors(Grant g, java.lang.String req, java.lang.String object, boolean all)
Search users to follow or mention in social postsstatic java.util.List<SocialPost.Author>
searchFollows(Grant g, boolean followed, java.lang.String status)
static java.lang.String
toJSONAuthor(Grant g, SocialPost.Author a)
Author as JSONstatic java.lang.String
toJSONAuthors(Grant g, java.lang.String req, java.lang.String object, boolean all)
Search users to follow or mention in social postsstatic java.lang.String
toJSONFollowers(Grant g, java.lang.String status)
Followed and followers authorsstatic java.lang.String
toJSONSocialPosts(Grant g, java.lang.String postId, java.lang.String object, java.lang.String rowId, int page, boolean act, boolean follow, boolean countersOnly, boolean audit, java.lang.String level)
Social data as JSONstatic SocialPost.Author
unfollow(Grant g, java.lang.String followedId)
Unfollow someonestatic void
unlike(Grant g, java.lang.String id)
Unlike a messagestatic void
updateStatus(Grant g, java.lang.String id, java.lang.String status)
Update a message status
-
-
-
Field Detail
-
FOLLOW_REQUEST
public static final java.lang.String FOLLOW_REQUEST
Follow request- See Also:
- Constant Field Values
-
FOLLOW_ACCEPTED
public static final java.lang.String FOLLOW_ACCEPTED
Follow accepted- See Also:
- Constant Field Values
-
FOLLOW_DENIED
public static final java.lang.String FOLLOW_DENIED
Follow refused- See Also:
- Constant Field Values
-
-
Method Detail
-
countPosts
public static long countPosts(Grant g, java.lang.String target, java.lang.String rowId, java.lang.String authorId, boolean act, boolean audit)
Count posts- Parameters:
g
- User rightstarget
- Optional target objectrowId
- Optional related IDauthorId
- Optional user IDact
- true to include activity messagesaudit
- true to list audit messages only- Returns:
- Posts count with user rights
-
search
public static java.util.List<SocialPost> search(Grant g, java.lang.String target, java.lang.String rowId, int page, boolean act, boolean audit, java.lang.String level)
Search posts- Parameters:
g
- User rights (to limit search to public and followed posts)target
- Optional objectrowId
- Optional row IDpage
- Paginationact
- true to include activity messagesaudit
- true to list audit messages onlylevel
- optional filter on level or closed status- Returns:
- List of visible posts for the user
-
get
public static SocialPost get(Grant g, java.lang.String id)
Get a post- Parameters:
g
- User rights (to limit search to public and followed posts)id
- row ID- Returns:
- SocialPost
-
post
public static void post(Grant g, java.lang.String message, boolean pub)
Post a new message- Parameters:
g
- User rightsmessage
- Messagepub
- Public or followers only
-
post
public static void post(Grant g, java.lang.String message, ObjectDB target)
Post a new message- Parameters:
g
- Authormessage
- Messagetarget
- Optional target object
-
post
public static void post(Grant g, java.lang.String type, java.lang.String author, ObjectDB target)
Post a new public activity on object- Parameters:
type
- Message type NEW|UPD|DEL|STATUSauthor
- Activity authortarget
- Current object (must be social)
-
post
public static void post(Grant g, java.lang.String type, java.lang.String author, ObjectDB target, boolean async)
Post a new public activity on object- Parameters:
type
- Message type NEW|UPD|DEL|STATUSauthor
- Activity authortarget
- Current object (must be social)async
- Asynchronous?
-
getDesignerId
public static java.lang.String getDesignerId()
-
countAuditPosts
public static java.util.Map<java.lang.String,java.lang.Long> countAuditPosts()
Count opened posts for qudit- Returns:
- 3 posts count info + warn + error + closed
-
postAudit
public static java.lang.String postAudit(java.lang.String level, java.lang.String msg, java.lang.String object, java.lang.String rowId)
Post one audit for designers- Parameters:
level
- Audit levelmsg
- Audit messageobject
- Impacted objectrowId
- Impacted object row ID- Returns:
- new post ID
-
searchAudit
public static java.util.Map<java.lang.String,java.lang.String> searchAudit(java.lang.String msg)
Search audit posts from designer- Parameters:
msg
- optional message to search- Returns:
- Map message = Id
-
deleteAudit
public static void deleteAudit(java.util.Map<java.lang.String,java.lang.String> map)
Delete audit messages- Parameters:
map
- Map of fixed messages
-
post
public static java.lang.String post(Grant g, java.lang.String id, java.lang.String message, boolean pub, java.lang.String target, java.lang.String rowId)
Post or update a message (by the owner only)- Parameters:
g
- User rightsid
- Message rowId (create if null, update if set)message
- Messagepub
- Public or followers onlytarget
- optional object namerowId
- optional object id- Returns:
- Post id
-
post
public static java.lang.String post(Grant g, java.lang.String userId, java.lang.String id, java.lang.String message, boolean pub, java.lang.String target, java.lang.String rowId, java.lang.String level, java.lang.String status)
Post or update a message (by the owner only)- Parameters:
g
- User rights to create the POSTuserId
- Author user IDid
- Message rowId (create if null, update if set)message
- Messagepub
- Public or followers onlytarget
- optional object namerowId
- optional object idlevel
- optional levelstatus
- optional status- Returns:
- Post id
-
notification
public static void notification(Grant g, java.lang.String message, java.lang.String author, java.lang.String target, java.lang.String id)
Send a notification to \@login mentioned in message. Use the alert "SocialPostMention" with 4 merged fields [AUTHOR] [OBJECT] [MESSAGE] [DIRECTURL]- Parameters:
g
- User rightsmessage
- Messageauthor
- Authortarget
- Optional object nameid
- Optional row Id
-
updateStatus
public static void updateStatus(Grant g, java.lang.String id, java.lang.String status)
Update a message status- Parameters:
g
- User rightsid
- Message rowIdstatus
- Status
-
delete
public static void delete(Grant g, java.lang.String id)
Delete a message (by the owner only)- Parameters:
g
- User rightsid
- Message rowId
-
deleteMessage
public static void deleteMessage(java.lang.String filter)
Delete message- Parameters:
filter
- Message filter
-
like
public static void like(Grant g, java.lang.String id)
Like a message- Parameters:
g
- User rightsid
- Message rowId
-
unlike
public static void unlike(Grant g, java.lang.String id)
Unlike a message- Parameters:
g
- User rightsid
- Message rowId
-
countFollows
public static long countFollows(Grant g, boolean followed, java.lang.String status)
-
searchFollows
public static java.util.List<SocialPost.Author> searchFollows(Grant g, boolean followed, java.lang.String status)
-
follow
public static SocialPost.Author follow(Grant g, java.lang.String followedId)
Request to follow someone
-
unfollow
public static SocialPost.Author unfollow(Grant g, java.lang.String followedId)
Unfollow someone
-
accept
public static SocialPost.Author accept(Grant g, java.lang.String followerId)
Accept to be followed
-
deny
public static SocialPost.Author deny(Grant g, java.lang.String followerId)
Deny to be followed
-
searchAuthors
public static java.util.List<SocialPost.Author> searchAuthors(Grant g, java.lang.String req, java.lang.String object, boolean all)
Search users to follow or mention in social posts- Parameters:
g
- User rightsreq
- Queryobject
- Optional object (default parameter OBJECT_MANAGEMENT_USER or User)all
- All authors or only not followed ones
-
toJSONAuthors
public static java.lang.String toJSONAuthors(Grant g, java.lang.String req, java.lang.String object, boolean all)
Search users to follow or mention in social posts- Parameters:
g
- User rightsreq
- Queryobject
- Optional object (default parameter OBJECT_MANAGEMENT_USER or User)all
- All authors or only not followed ones- Returns:
- JSON follow
-
toJSONSocialPosts
public static java.lang.String toJSONSocialPosts(Grant g, java.lang.String postId, java.lang.String object, java.lang.String rowId, int page, boolean act, boolean follow, boolean countersOnly, boolean audit, java.lang.String level)
Social data as JSON- Parameters:
postId
- Optional filterobject
- Optional filterrowId
- Optional filterpage
- Paginationact
- true to include activity messagesfollow
- true to get follower counterscountersOnly
- true to get counters onlyaudit
- true to get audit messageslevel
- optional filter on level- Returns:
- JSON string
{ count, posted, page, list:[], follow:{followed, follower, requested} }
-
toJSONAuthor
public static java.lang.String toJSONAuthor(Grant g, SocialPost.Author a)
Author as JSON- Parameters:
g
- User rightsa
- Author- Returns:
- JSON follow with author
-
toJSONFollowers
public static java.lang.String toJSONFollowers(Grant g, java.lang.String status)
Followed and followers authors- Parameters:
g
- User rightsstatus
- Optional status- Returns:
- JSON follow with followed and follower arrays
-
-