Class ClickStreamService
- java.lang.Object
-
- com.hybris.ymkt.clickstream.services.ClickStreamService
-
public class ClickStreamService extends java.lang.ObjectSendAbstractTrackingEventto CUAN_IMPORT_SRV
-
-
Field Summary
Fields Modifier and Type Field Description protected static java.lang.StringIMPORT_HEADERSprotected java.util.Map<java.lang.String,java.lang.String>interactionTypesprotected booleanlinkAnonymousAndLoggedInUsersprotected ODataServiceoDataServiceprotected ProductURLServiceproductURLServiceprotected static java.lang.StringSAP_MERCH_SHOPprotected static java.lang.ShortSHORT_ONEprotected static java.lang.ShortSHORT_ZEROprotected static java.lang.StringSOURCE_OBJECT_IDprotected static java.lang.StringSOURCE_OBJECT_TYPEprotected static java.lang.StringSOURCE_SYSTEM_IDprotected static java.lang.StringSOURCE_SYSTEM_TYPEprotected static java.util.function.Predicate<java.lang.String>STRING_IS_EMPTYprotected static java.util.function.Predicate<java.lang.String>STRING_IS_EMPTY_NOTprotected static java.lang.StringURL_PK_CAMPAIGNprotected static java.lang.StringURL_SAP_OUTBOUND_ID
-
Constructor Summary
Constructors Constructor Description ClickStreamService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected byte[]compressGZIP(byte[] payload)protected java.util.Map<java.lang.String,java.lang.Object>createImportHeader()protected java.util.Map<java.lang.String,java.lang.Object>createInteraction(AbstractTrackingEvent event)protected java.util.Map<java.lang.String,java.lang.Object>createInteractionProduct(AbstractProductAwareTrackingEvent event)protected java.lang.StringextractInitiativeId(java.lang.String url1, java.lang.String url2)protected java.lang.StringextractSAPTrackingId(java.lang.String url1, java.lang.String url2)protected java.lang.StringextractURLParameter(java.lang.String parameterName, java.lang.String url)protected intgetReadTimeout()booleanlinkAnonymousAndLoggedInUsers(java.lang.String anonymousUserId, java.lang.String anonymousUserOrigin, java.lang.String loggedInUserId, java.lang.String loggedInUserOrigin)Links the anonymous and logged-in users by making the anonymous user a facet of the logged-in user.
In SAP Marketing, the anonymous & logged-in events are linked to a single contact golden record.protected voidpopulateInteraction(java.util.Map<java.lang.String,java.lang.Object> interaction, AbstractTrackingEvent event)booleansendEvents(java.util.List<? extends AbstractTrackingEvent> events)Transform and send theAbstractTrackingEvents to yMKT.voidsetInteractionTypeMapping(java.util.Map<java.lang.String,java.lang.String> interactionTypeMapping)Build a map to link commerce event to yMKT event type.
SPRO - SAP Customizing Implementation Guide - SAP Marketing - Contacts and Profiles - Interactions - Define Interaction Types :
PROD_REVIEW_VIEW - Product Review Read SHOP_CART_ABANDONED - Shopping Cart Abandoned SHOP_CART_VIEW - View Shopping CartSHOP_CHECKOUT_ABNDND - Checkout Abandoned.voidsetLinkAnonymousAndLoggedInUsers(boolean linkAnonymousAndLoggedInUsers)voidsetODataService(ODataService oDataService)voidsetProductURLService(ProductURLService productURLService)
-
-
-
Field Detail
-
IMPORT_HEADERS
protected static final java.lang.String IMPORT_HEADERS
- See Also:
- Constant Field Values
-
SAP_MERCH_SHOP
protected static final java.lang.String SAP_MERCH_SHOP
- See Also:
- Constant Field Values
-
SHORT_ONE
protected static final java.lang.Short SHORT_ONE
-
SHORT_ZERO
protected static final java.lang.Short SHORT_ZERO
-
SOURCE_OBJECT_ID
protected static final java.lang.String SOURCE_OBJECT_ID
- See Also:
- Constant Field Values
-
SOURCE_OBJECT_TYPE
protected static final java.lang.String SOURCE_OBJECT_TYPE
- See Also:
- Constant Field Values
-
SOURCE_SYSTEM_ID
protected static final java.lang.String SOURCE_SYSTEM_ID
- See Also:
- Constant Field Values
-
SOURCE_SYSTEM_TYPE
protected static final java.lang.String SOURCE_SYSTEM_TYPE
- See Also:
- Constant Field Values
-
STRING_IS_EMPTY
protected static final java.util.function.Predicate<java.lang.String> STRING_IS_EMPTY
-
STRING_IS_EMPTY_NOT
protected static final java.util.function.Predicate<java.lang.String> STRING_IS_EMPTY_NOT
-
URL_PK_CAMPAIGN
protected static final java.lang.String URL_PK_CAMPAIGN
- See Also:
- Constant Field Values
-
URL_SAP_OUTBOUND_ID
protected static final java.lang.String URL_SAP_OUTBOUND_ID
- See Also:
- Constant Field Values
-
linkAnonymousAndLoggedInUsers
protected boolean linkAnonymousAndLoggedInUsers
-
interactionTypes
protected final java.util.Map<java.lang.String,java.lang.String> interactionTypes
-
oDataService
protected ODataService oDataService
-
productURLService
protected ProductURLService productURLService
-
-
Method Detail
-
compressGZIP
protected byte[] compressGZIP(byte[] payload) throws java.io.IOException- Throws:
java.io.IOException
-
createImportHeader
protected java.util.Map<java.lang.String,java.lang.Object> createImportHeader()
-
createInteraction
protected java.util.Map<java.lang.String,java.lang.Object> createInteraction(AbstractTrackingEvent event)
-
createInteractionProduct
protected java.util.Map<java.lang.String,java.lang.Object> createInteractionProduct(AbstractProductAwareTrackingEvent event)
-
extractInitiativeId
protected java.lang.String extractInitiativeId(java.lang.String url1, java.lang.String url2)
-
extractSAPTrackingId
protected java.lang.String extractSAPTrackingId(java.lang.String url1, java.lang.String url2)
-
extractURLParameter
protected java.lang.String extractURLParameter(java.lang.String parameterName, java.lang.String url)
-
getReadTimeout
protected int getReadTimeout()
-
populateInteraction
protected void populateInteraction(java.util.Map<java.lang.String,java.lang.Object> interaction, AbstractTrackingEvent event)
-
sendEvents
public boolean sendEvents(java.util.List<? extends AbstractTrackingEvent> events)
Transform and send theAbstractTrackingEvents to yMKT.- Parameters:
events-ListofAbstractTrackingEventto send to yMKT.- Returns:
- true if the transfer was successful. false otherwise.
-
linkAnonymousAndLoggedInUsers
public boolean linkAnonymousAndLoggedInUsers(java.lang.String anonymousUserId, java.lang.String anonymousUserOrigin, java.lang.String loggedInUserId, java.lang.String loggedInUserOrigin)Links the anonymous and logged-in users by making the anonymous user a facet of the logged-in user.
In SAP Marketing, the anonymous & logged-in events are linked to a single contact golden record.- Parameters:
anonymousUserId- User ID before login or register.anonymousUserOrigin- yMKT Origin ID.loggedInUserId- User ID after login or register.loggedInUserOrigin- yMKT Origin ID.- Returns:
trueif the transfer was successful.falseotherwise.
-
setInteractionTypeMapping
public void setInteractionTypeMapping(java.util.Map<java.lang.String,java.lang.String> interactionTypeMapping)
Build a map to link commerce event to yMKT event type.
SPRO - SAP Customizing Implementation Guide - SAP Marketing - Contacts and Profiles - Interactions - Define Interaction Types :
- PROD_REVIEW_VIEW - Product Review Read
- SHOP_CART_ABANDONED - Shopping Cart Abandoned
- SHOP_CART_VIEW - View Shopping Cart
SHOP_CHECKOUT_ABNDND - Checkout Abandoned. No matching commerce event.- SHOP_CHECKOUT_START - Proceeded to Checkout
- SHOP_CHECKOUT_SUCCES - Checkout Successful
- SHOP_ITEM_ADD - Product Added to Shopping Cart
- SHOP_ITEM_REMOVE - Product Removed from Shopping Cart
- SHOP_ITEM_VIEW - Product Viewed
- Parameters:
interactionTypeMapping- Mapping from ECP event type to yMKT interaction type.
-
setODataService
public void setODataService(ODataService oDataService)
-
setProductURLService
public void setProductURLService(ProductURLService productURLService)
-
setLinkAnonymousAndLoggedInUsers
public void setLinkAnonymousAndLoggedInUsers(boolean linkAnonymousAndLoggedInUsers)
-
-