|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectatg.nucleus.logging.VariableArgumentApplicationLoggingImpl
atg.nucleus.GenericService
atg.svc.repository.service.BaseService
atg.svc.repository.service.SharedService
atg.svc.repository.service.SolutionScoringService
public class SolutionScoringService
Maintains the solution scoring. Also supports the retrieval of the the pre-defined solution lists
The lists:
all the solutions
or for a specific solution class
sorted
by the score as defined in the QOAA formula as defined by the configuration
property listFormula
.
all the solutions
or for a
specific solution class
sorted
by the score as defined in the top solution formula as defined by the
configuration property listFormula
.
all the solutions
or for a
specific solution class
sorted
by the score as defined in the hot solution formula as defined by the
configuration property listFormula
.
Currently, other kind of list are not supported.
Updating the solution use count
The use count as defined means how many times a particular solution is refered
to by a problem object. Hence, whenever a solution is linked to a problem the
solution's use count should be incremented via
incrementUseCount
and whenever a solution is unlinked from a problem the use count should be
decremented via decrementViewCount
Updating the solution view count
The view count as defined means how many times a particular solution is viewed.
Hence, whenever a solution is viewed the solution's view count should be
incremented via incrementViewCount
.
View count never decreases.
Updating the solution hot use count
Hot Use Count as defined means how many times a particular solution has been
referred to within the specified duration in days
in the past.
For this a scheduler service needs to be run that will refresh the hot use count.
This service would compute the hot use count and
set the hot use count
.
Issue: While updating the solution's hot use count it is possible that it's use/view count may change before saving the solution relevance object as a result a stale value for use/view count may get persisted. If the solution's use count changed, it may not be considered while computing the hot use count.
Defining the Utility Formulas for Solution's scores per list
When the fomula changes, the solution relevance scores would have to be recomputed.
In order to recompute the score for all the solutions a special method would
have to be called that would compute and persist the score in batch mode for
every solution relevance object
.
Formulas can be defined as per the JEP specs.
There are three type of lists that are supported
hot
top
qoaa
all the solution that have been specifically
defined as QOAA or are marked as Best Bet
When the useBestBetOnly
is set to true, explicitly
defined QOAAs are ignored.
The service configuration property listFormulas
should be used to set the formulas for the each list with the exception of
hot solutions list. The service properties file is used to configuration.
The formulas can use the following restricted list of variables that correspond to the properties of solution relevance
The solution relevance property names are configurable via the following methods
getSolutionRelevanceUseCountPropertyName()
getSolutionRelevanceViewCountPropertyName()
getSolutionRelevanceHotUseCountPropertyName()
The default formulas are:
hot
the formula is empty and when it is not defined
in this list, the one defined via the admin option is used.
useCountWeight*hotUseCount+viewCountWeight*viewCount
useCountWeight is provided via the admin option specified via getHotUseCountWeightPropertyName()
viewCountWeight is provided via the admin option specified via getHotViewCountWeightPropertyName()
top
the formula is viewCount
qoaa
the formula is useCount
Defining the duration for Hot Counts
For hot use count durations can be specified via the admin option in days.
The admin option is specified via getHotUseCountDurationPropertyName()
Hot use count duration
reads the site option
gives the number of days.
RecommendedAnswer
that uses a solution. @see atg.svc.repository.service.RecommendedAnswerService#saveRecommendedAnswer(RecommendedAnswer, boolean)RecommendedAnswer(RecommendedAnswer, boolean)(RecommendedAnswer, boolean)
Field Summary | |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string |
static int |
sLISTORDERING_ASC
|
static int |
sLISTORDERING_DESC
|
static java.lang.String |
sLISTTYPE_HOT
|
static java.lang.String |
sLISTTYPE_QOAA
|
static java.lang.String |
sLISTTYPE_TOP
|
static java.lang.String |
sSOLUTION_SCORING_FILTER_CONTEXT_PATH
The component path of the request scoped nucleus component that stores the filter context for filtering hot solutions, top questions and QOAA by topic and solution class. |
Fields inherited from class atg.nucleus.GenericService |
---|
SERVICE_INFO_KEY |
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging |
---|
DEFAULT_LOG_TRACE_STATUS |
Fields inherited from interface atg.nucleus.logging.ApplicationLogging |
---|
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS |
Constructor Summary | |
---|---|
SolutionScoringService()
|
Method Summary | |
---|---|
int |
computeHotScore(SolutionRelevance pSolutionRelevance)
Computes the hot solution score, but does not update the SolutionRelevance item |
int |
computeHotUseCount(java.lang.String pSolutionId)
|
int |
computeQOAAScore(SolutionRelevance pSolutionRelevance)
Computes the hot solution score, but does not update the SolutionRelevance item |
void |
computeScore(SolutionRelevance pSolutionRelevance)
Computes the hot, top and qoaa scores and updates those scores in the SolutionRelevance item |
int |
computeTopScore(SolutionRelevance pSolutionRelevance)
Computes the hot solution score, but does not update the SolutionRelevance item |
SolutionRelevance |
create(atg.svc.repository.beans.Solution pSolution)
Creates a new solution relevance bean for the specified solution. |
SolutionRelevance |
create(java.lang.String pSolutionId)
Creates a new solution relevance bean for the specified solution. |
SolutionRelevance |
create(java.lang.String pSolutionId,
java.lang.String pSolutionClassId)
Creates a new solution relevance bean for the specified solution. |
int |
decrementHotUseCount(java.lang.String pSolutionId)
Decrements the hot use count for the solution and saves it. |
int |
decrementUseCount(java.lang.String pSolutionId)
Decrements the Use count for the solution and saves it. |
SolutionRelevance |
findByPrimaryKey(java.lang.String pSolutionRelevanceId)
Finds a solution relevance object by the SolutionRelevance repository id. |
SolutionRelevance |
findBySolutionId(java.lang.String pSolutionId)
Finds a solution relevance object by the solution's repository id. |
java.util.Collection |
getAllSolutionRelevance()
|
java.util.Collection |
getBatchSolutionRelevance(java.lang.String pLastSolutionRelevanceId,
int pBatchSize)
|
atg.search.routing.command.search.DocumentSetConstraint[] |
getBestBetsCustomConstraints()
A list of custom constraint components that can be used to further constrain the best bets (a.k.a. |
int |
getDefaultMax()
|
int |
getDefaultOrdering()
|
java.util.Locale |
getFilterLocale()
Sets the locale used to fitler the results. |
java.util.List |
getHotSolutionClasses()
get the HotSolutionClasses as configured in the options. |
java.lang.String |
getHotSolutionClassesPropertyName()
|
java.util.Collection |
getHotSolutions()
Deprecated. This function is being retained for backward compatibility but you should use getHotSolutionsAsSolutions() instead. Most callers want a list of Solution rather than a list of SolutionRelevance and getHotSolutionsAsSolutions() is more efficient than getting the SolutionRelevance and then retrieving the Solution by id. getHotSolutionsAsSolutions() will also make sure that non-deployed solutions are not returned in self-service. NOTE: If you want to get the SolutionRelevance, you can also get it from Solution.getSolutionRelevance() . |
java.util.Collection |
getHotSolutions(java.lang.String pSolutionClassId)
Gets the Hot Solutions list |
java.util.Collection |
getHotSolutionsAsSolutions()
Gets the Hot Solutions list |
java.util.List |
getHotSolutionsAsSolutions(int pMaxSolutions,
java.util.Collection pTopicIds,
java.util.Collection pSolutionClassIds)
Gets the Hot Solutions list filtered by constraints and sorted by their hot score. |
atg.search.routing.command.search.DocumentSetConstraint[] |
getHotSolutionsCustomConstraints()
A list of custom constraint components that can be used to further constrain the hot solutions query. |
java.util.List |
getHotSolutionTopics()
get the HotSolutionTopics as configured in the options. |
java.lang.String |
getHotSolutionTopicsPropertyName()
|
int |
getHotUseCountDuration()
Get the HotUseCountDuration to be used in the scoring formula as defined in the site options. |
java.lang.String |
getHotUseCountDurationPropertyName()
|
int |
getHotUseCountWeight()
Get the HotUseCountWeight to be used in the scoring formula as defined in the site options. |
java.lang.String |
getHotUseCountWeightPropertyName()
|
int |
getHotViewCountWeight()
Get the HotViewCountWeight to be used in the scoring formula as defined in the site options. |
java.lang.String |
getHotViewCountWeightPropertyName()
|
java.util.Map |
getListFormulas()
|
java.util.Map |
getListMax()
|
int |
getListOrderHotSolutions()
|
java.util.Map |
getListOrdering()
|
int |
getListOrderQOAASolutions()
|
int |
getListOrderTopSolutions()
|
java.lang.String[] |
getLists()
|
int |
getMaxBestBets()
|
int |
getMaxBestBets(atg.repository.RepositoryItem pProfile)
|
java.lang.String |
getMaxBestBetsPropertyName()
|
int |
getMaxHotSolutions()
|
int |
getMaxHotSolutions(atg.repository.RepositoryItem pProfile)
|
java.lang.String |
getMaxHotSolutionsPropertyName()
|
int |
getMaxTopQuestions()
|
int |
getMaxTopQuestions(atg.repository.RepositoryItem pProfile)
|
java.lang.String |
getMaxTopQuestionsPropertyName()
|
java.util.Collection |
getQOAAList()
Gets the Questions Others are Asking List |
QOAAService |
getQOAAService()
|
RecommendedAnswerService |
getRecommendedAnswerService()
|
atg.svc.search.SearchLanguageService |
getSearchLanguageService()
|
atg.svc.search.SearchService |
getSearchService()
|
SiteService |
getSiteService()
|
SolutionRelevance |
getSolutionRelevance(java.lang.String pSolutionId)
Gets a SolutionRelevance object for the given solution id. |
java.lang.String |
getSolutionRelevanceHotUseCountPropertyName()
|
java.lang.String |
getSolutionRelevanceUseCountPropertyName()
|
java.lang.String |
getSolutionRelevanceViewCountPropertyName()
|
atg.svc.repository.service.util.SolutionSecurityUtils |
getSolutionSecurityUtils()
|
SolutionService |
getSolutionService()
|
java.util.Collection |
getTopSolutions()
Deprecated. This function is being retained for backward compatibility but you should use getTopSolutionsAsSolutions() instead. Most callers want a list of Solution rather than a list of SolutionRelevance and getTopSolutionsAsSolutions() is more efficient than getting the SolutionRelevance and then retrieving the Solution by id. getTopSolutionsAsSolutions() will also make sure that non-deployed solutions are not returned in self-service. NOTE: If you want to get the SolutionRelevance, you can also get it from Solution.getSolutionRelevance() . |
java.util.Collection |
getTopSolutions(int pMaxSolutions,
java.util.Collection pTopicIds,
java.util.Collection pSolutionClassIds)
Gets the Top Solutions list filtered by constraints and sorted by their top score. |
java.util.Collection |
getTopSolutions(java.lang.String pSolutionClassId)
Gets the Top Solutions list |
java.util.Collection |
getTopSolutionsAsSolutions()
Gets the Top Solutions list |
java.util.Collection |
getTopSolutionsAsSolutions(int pMaxSolutions,
java.util.Collection pTopicIds,
java.util.Collection pSolutionClassIds)
Gets the Top Solutions list filtered by constraints and sorted by their top score. |
atg.search.routing.command.search.DocumentSetConstraint[] |
getTopSolutionsCustomConstraints()
A list of custom constraint components that can be used to further constrain the top solutions query. |
UserOptionsService |
getUserOptionsService()
|
int |
incrementHotUseCount(java.lang.String pSolutionId)
Increments the hot use count for the solution and saves it. |
int |
incrementUseCount(java.lang.String pSolutionId)
Increments the Use count for the solution and saves it. |
int |
incrementViewCount(java.lang.String pSolutionId)
Increments the view count for the solution and saves it. |
boolean |
isAgentModule()
|
boolean |
isFlexibleHotUseCount()
|
boolean |
isUseBestBetOnly()
|
void |
save(SolutionRelevance pSolutionRelevance)
Saves a solution relevance object to the repository. |
void |
setAgentModule(boolean pAgentModule)
|
void |
setBestBetsCustomConstraints(atg.search.routing.command.search.DocumentSetConstraint[] pBestBetsCustomConstraints)
|
void |
setDefaultMax(int pDefaultMax)
|
void |
setDefaultOrdering(int pDefaultOrdering)
|
void |
setFlexibleHotUseCount(boolean pFlexibleHotUseCount)
|
void |
setHotSolutionClassesPropertyName(java.lang.String pHotSolutionClassesPropertyName)
|
void |
setHotSolutionsCustomConstraints(atg.search.routing.command.search.DocumentSetConstraint[] pHotSolutionsCustomConstraints)
|
void |
setHotSolutionTopicsPropertyName(java.lang.String pHotSolutionTopicsPropertyName)
|
int |
setHotUseCount(java.lang.String pSolutionId,
int pHotUseCount)
Sets the hot use count for the solution and saves it. |
void |
setHotUseCountDurationPropertyName(java.lang.String pHotUseCountDurationProperties)
|
void |
setHotUseCountWeightPropertyName(java.lang.String pHotUseCountWeightPropertyName)
|
void |
setHotViewCountWeightPropertyName(java.lang.String pHotViewCountWeightPropertyName)
|
void |
setListFormulas(java.util.Map pListFormulas)
|
void |
setListMax(java.util.Map pListMax)
|
void |
setListOrdering(java.util.Map pListOrdering)
|
void |
setLists(java.lang.String[] pLists)
|
void |
setMaxBestBetsPropertyName(java.lang.String pMaxBestBetsPropertyName)
|
void |
setMaxHotSolutionsPropertyName(java.lang.String pMaxHotSolutionsPropertyName)
|
void |
setMaxTopQuestionsPropertyName(java.lang.String pMaxTopQuestionsPropertyName)
|
void |
setQOAAService(QOAAService pQOAAService)
|
void |
setRecommendedAnswerService(RecommendedAnswerService pRecommendedAnswerService)
|
void |
setSearchLanguageService(atg.svc.search.SearchLanguageService pSearchLanguageService)
|
void |
setSearchService(atg.svc.search.SearchService pSearchService)
|
void |
setSiteService(SiteService pSiteService)
|
void |
setSolutionRelevanceHotUseCountPropertyName(java.lang.String pSolutionRelevanceHotUseCountPropertyName)
|
void |
setSolutionRelevanceUseCountPropertyName(java.lang.String pSolutionRelevanceUseCountPropertyName)
|
void |
setSolutionRelevanceViewCountPropertyName(java.lang.String pSolutionRelevanceViewCountPropertyName)
|
void |
setSolutionSecurityUtils(atg.svc.repository.service.util.SolutionSecurityUtils pSolutionSecurityUtils)
|
void |
setSolutionService(SolutionService pSolutionService)
|
void |
setTopSolutionsCustomConstraints(atg.search.routing.command.search.DocumentSetConstraint[] pTopSolutionsCustomConstraints)
|
void |
setUseBestBetOnly(boolean pUseBestBetOnly)
|
void |
setUserOptionsService(UserOptionsService pUserOptionsService)
|
int |
updateHotUseCount(SolutionRelevance pSolutionRelevance)
Updates the hot use count and recomputes the score for the solution and saves the updated SolutionRelevance repository item. |
int |
updateHotUseCount(java.lang.String pSolutionId)
Updates the hot use count and recomputes the score for the solution and saves the updated SolutionRelevance repository item. |
Methods inherited from class atg.svc.repository.service.SharedService |
---|
getServiceSharedBeanHomes, getServiceSharedBeanHomesName, getServiceSharedRepositoryHomes, getServiceSharedRepositoryHomesName, setServiceSharedBeanHomesName, setServiceSharedRepositoryHomesName |
Methods inherited from class atg.svc.repository.service.BaseService |
---|
getRepositoryService, getToday, setRepositoryService |
Methods inherited from class atg.nucleus.GenericService |
---|
addLogListener, createAdminServlet, doStartService, doStopService, getAbsoluteName, getAdminServlet, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService |
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl |
---|
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String CLASS_VERSION
public static java.lang.String sLISTTYPE_HOT
public static java.lang.String sLISTTYPE_TOP
public static java.lang.String sLISTTYPE_QOAA
public static int sLISTORDERING_DESC
public static int sLISTORDERING_ASC
public static java.lang.String sSOLUTION_SCORING_FILTER_CONTEXT_PATH
Constructor Detail |
---|
public SolutionScoringService()
Method Detail |
---|
public RecommendedAnswerService getRecommendedAnswerService()
public void setRecommendedAnswerService(RecommendedAnswerService pRecommendedAnswerService)
public QOAAService getQOAAService()
public void setQOAAService(QOAAService pQOAAService)
public SiteService getSiteService()
public void setSiteService(SiteService pSiteService)
public UserOptionsService getUserOptionsService()
public void setUserOptionsService(UserOptionsService pUserOptionsService)
public atg.svc.search.SearchLanguageService getSearchLanguageService()
public void setSearchLanguageService(atg.svc.search.SearchLanguageService pSearchLanguageService)
public atg.svc.search.SearchService getSearchService()
public void setSearchService(atg.svc.search.SearchService pSearchService)
public boolean isAgentModule()
public void setAgentModule(boolean pAgentModule)
public atg.search.routing.command.search.DocumentSetConstraint[] getHotSolutionsCustomConstraints()
CountryConstraint
public void setHotSolutionsCustomConstraints(atg.search.routing.command.search.DocumentSetConstraint[] pHotSolutionsCustomConstraints)
public atg.search.routing.command.search.DocumentSetConstraint[] getTopSolutionsCustomConstraints()
atg.svc.repository.service.util.SolutionScoringConstraintImpl
public void setTopSolutionsCustomConstraints(atg.search.routing.command.search.DocumentSetConstraint[] pTopSolutionsCustomConstraints)
public atg.search.routing.command.search.DocumentSetConstraint[] getBestBetsCustomConstraints()
atg.svc.repository.service.util.SolutionScoringConstraintImpl
public void setBestBetsCustomConstraints(atg.search.routing.command.search.DocumentSetConstraint[] pBestBetsCustomConstraints)
public atg.svc.repository.service.util.SolutionSecurityUtils getSolutionSecurityUtils()
public void setSolutionSecurityUtils(atg.svc.repository.service.util.SolutionSecurityUtils pSolutionSecurityUtils)
pSolutionSecurityUtils
- The solutionSecurityUtils to set.public SolutionService getSolutionService()
public void setSolutionService(SolutionService pSolutionService)
pSolutionService
- The solutionService to set.public int getDefaultMax()
public void setDefaultMax(int pDefaultMax)
pDefaultMax
- The defaultMax to set.public int getDefaultOrdering()
public void setDefaultOrdering(int pDefaultOrdering)
pDefaultOrdering
- The defaultOrdering to set.public java.lang.String[] getLists()
public void setLists(java.lang.String[] pLists)
pLists
- The lists to set.public java.util.Map getListFormulas()
public void setListFormulas(java.util.Map pListFormulas)
pListFormulas
- The listFormulas to set.public java.util.Map getListMax()
public void setListMax(java.util.Map pListMax)
pListMax
- The listMax to set.public int getMaxHotSolutions()
public int getMaxHotSolutions(atg.repository.RepositoryItem pProfile)
public int getMaxTopQuestions()
public int getMaxTopQuestions(atg.repository.RepositoryItem pProfile)
public int getMaxBestBets()
public int getMaxBestBets(atg.repository.RepositoryItem pProfile)
public java.util.Map getListOrdering()
public void setListOrdering(java.util.Map pListOrdering)
pListOrdering
- The listOrdering to set.public int getListOrderHotSolutions()
public int getListOrderTopSolutions()
public int getListOrderQOAASolutions()
public boolean isFlexibleHotUseCount()
public void setFlexibleHotUseCount(boolean pFlexibleHotUseCount)
pFlexibleHotUseCount
- The flexibleHotUseCount to set.public boolean isUseBestBetOnly()
public void setUseBestBetOnly(boolean pUseBestBetOnly)
pUseBestBetOnly
- The useBestBetOnly to set.public java.lang.String getHotSolutionClassesPropertyName()
public void setHotSolutionClassesPropertyName(java.lang.String pHotSolutionClassesPropertyName)
pHotSolutionClassesPropertyName
- The hotSolutionClassesPropertyName to set.public java.lang.String getHotSolutionTopicsPropertyName()
public void setHotSolutionTopicsPropertyName(java.lang.String pHotSolutionTopicsPropertyName)
pHotSolutionTopicsPropertyName
- The hotSolutionTopicsPropertyName to set.public java.lang.String getMaxHotSolutionsPropertyName()
public void setMaxHotSolutionsPropertyName(java.lang.String pMaxHotSolutionsPropertyName)
public java.lang.String getMaxTopQuestionsPropertyName()
public void setMaxTopQuestionsPropertyName(java.lang.String pMaxTopQuestionsPropertyName)
public java.lang.String getMaxBestBetsPropertyName()
public void setMaxBestBetsPropertyName(java.lang.String pMaxBestBetsPropertyName)
public java.lang.String getHotUseCountDurationPropertyName()
public void setHotUseCountDurationPropertyName(java.lang.String pHotUseCountDurationProperties)
pHotUseCountDurationProperties
- The hotUseCountDurationProperties to set.public java.lang.String getHotUseCountWeightPropertyName()
public void setHotUseCountWeightPropertyName(java.lang.String pHotUseCountWeightPropertyName)
pHotUseCountWeightPropertyName
- The hotUseCountWeightPropertyName to set.public java.lang.String getHotViewCountWeightPropertyName()
public void setHotViewCountWeightPropertyName(java.lang.String pHotViewCountWeightPropertyName)
pHotViewCountWeightPropertyName
- The hotViewCountWeightPropertyName to set.public java.lang.String getSolutionRelevanceUseCountPropertyName()
public void setSolutionRelevanceUseCountPropertyName(java.lang.String pSolutionRelevanceUseCountPropertyName)
pSolutionRelevanceUseCountPropertyName
- The solutionRelevanceUseCountPropertyName to set.public java.lang.String getSolutionRelevanceHotUseCountPropertyName()
public void setSolutionRelevanceHotUseCountPropertyName(java.lang.String pSolutionRelevanceHotUseCountPropertyName)
pSolutionRelevanceHotUseCountPropertyName
- The solutionRelevanceHotUseCountPropertyName to set.public java.lang.String getSolutionRelevanceViewCountPropertyName()
public void setSolutionRelevanceViewCountPropertyName(java.lang.String pSolutionRelevanceViewCountPropertyName)
pSolutionRelevanceViewCountPropertyName
- The solutionRelevanceViewCountPropertyName to set.public java.util.List getHotSolutionClasses() throws javax.ejb.FinderException, ObjectNotFoundException
UserOptionsService.getArrayValue(String)
If the option is set to null, an empty list is returned which implies "ALL SOLUTION CLASSES"
javax.ejb.FinderException
ObjectNotFoundException
public java.util.List getHotSolutionTopics() throws javax.ejb.FinderException, ObjectNotFoundException
UserOptionsService.getArrayValue(String)
If the option is set to null, an empty list is returned which implies "ALL TOPICS"
javax.ejb.FinderException
ObjectNotFoundException
public int getHotUseCountWeight() throws ObjectNotFoundException
SiteService.getIntegerValue(String)
ObjectNotFoundException
- when the site option getHotUseCountWeightPropertyName()
is not found.public int getHotViewCountWeight() throws ObjectNotFoundException
SiteService.getIntegerValue(String)
ObjectNotFoundException
- when the site option getHotViewCountWeightPropertyName()
is not found.public int getHotUseCountDuration() throws ObjectNotFoundException
SiteService.getIntegerValue(String)
ObjectNotFoundException
- when the site option getHotUseCountDurationPropertyName()
is not found.public java.util.Collection getHotSolutions() throws javax.ejb.FinderException, ObjectNotFoundException
Solution.getSolutionRelevance()
.
Solution Releavance objects
javax.ejb.FinderException
- When an error occurs
ObjectNotFoundException
- When solution not foundgetHotSolutionsAsSolutions()
public java.util.Collection getHotSolutionsAsSolutions() throws javax.servlet.jsp.JspException
Solution objects
javax.servlet.jsp.JspException
- When an error occurspublic java.util.Collection getHotSolutions(java.lang.String pSolutionClassId) throws javax.ejb.FinderException, ObjectNotFoundException
pSolutionClass
- The solution class RepItem
Solution Releavance objects
javax.ejb.FinderException
- When an error occurs
ObjectNotFoundException
- When solution not foundpublic java.util.List getHotSolutionsAsSolutions(int pMaxSolutions, java.util.Collection pTopicIds, java.util.Collection pSolutionClassIds) throws javax.ejb.FinderException, ObjectNotFoundException
pMaxSolutions
- The max number of solutions to be returned.pTopicIds
- A collection of topic repIds that will used as filter constraints.
Empty or null means all topicspSolutionClassIds
- A collection of solution class repIds that will be used as filter constraints.
Empty or null means all solution classes
Solution objects
javax.ejb.FinderException
- When an error occurs
javax.ejb.EJBException
ObjectNotFoundException
public java.util.Collection getTopSolutions() throws javax.ejb.FinderException, ObjectNotFoundException
Solution.getSolutionRelevance()
.
Solution Releavance objects
javax.ejb.FinderException
- When an error occurs
ObjectNotFoundException
- When solution not foundgetTopSolutionsAsSolutions()
public java.util.Collection getTopSolutions(java.lang.String pSolutionClassId) throws javax.ejb.FinderException, ObjectNotFoundException
pSolutionClass
- The solution class RepItem
Solution Releavance objects
javax.ejb.FinderException
- When an error occurs
ObjectNotFoundException
- When solution not foundpublic java.util.Collection getTopSolutions(int pMaxSolutions, java.util.Collection pTopicIds, java.util.Collection pSolutionClassIds) throws javax.ejb.FinderException, ObjectNotFoundException, javax.ejb.EJBException
pMaxSolutions
- The max number of solutions to be returned.pTopicIds
- A collection of topic repIds that will used as filter constraints.
Empty or null means all topicspSolutionClassIds
- A collection of solution class repIds that will be used as filter constraints.
Empty or null means all solution classes
Solution Releavance objects
javax.ejb.FinderException
- When an error occurs
javax.ejb.EJBException
ObjectNotFoundException
- When solution not foundpublic java.util.Collection getTopSolutionsAsSolutions() throws javax.servlet.jsp.JspException
Solution objects
javax.ejb.FinderException
- When an error occurs
ObjectNotFoundException
- When solution not found
javax.servlet.jsp.JspException
public java.util.Collection getTopSolutionsAsSolutions(int pMaxSolutions, java.util.Collection pTopicIds, java.util.Collection pSolutionClassIds) throws javax.ejb.FinderException, ObjectNotFoundException, javax.ejb.EJBException
pMaxSolutions
- The max number of solutions to be returned.pTopicIds
- A collection of topic repIds that will used as filter constraints.
Empty or null means all topicspSolutionClassIds
- A collection of solution class repIds that will be used as filter constraints.
Empty or null means all solution classes
Solution objects
javax.ejb.FinderException
- When an error occurs
javax.ejb.EJBException
ObjectNotFoundException
public java.util.Collection getQOAAList() throws javax.servlet.jsp.JspException
javax.ejb.FinderException
- When an error occurs
ObjectNotFoundException
- When solution not found
javax.servlet.jsp.JspException
public SolutionRelevance findByPrimaryKey(java.lang.String pSolutionRelevanceId) throws ObjectNotFoundException
pSolutionRelevanceId
- The repository id of solution relevance object
ObjectNotFoundException
- If the id is not found.public SolutionRelevance findBySolutionId(java.lang.String pSolutionId)
pSolutionId
- The repository id of Solution object
public SolutionRelevance create(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException
save
to persist the solution relevance
object.
pSolutionId
- Solution RepId
javax.ejb.CreateException
- If the create fails.
ObjectNotFoundException
- when the solution is not found.public SolutionRelevance create(atg.svc.repository.beans.Solution pSolution) throws javax.ejb.CreateException
save
to persist the solution relevance
object.
pSolution
- Solution Repository item.
javax.ejb.CreateException
- If the create fails.public SolutionRelevance create(java.lang.String pSolutionId, java.lang.String pSolutionClassId) throws javax.ejb.CreateException
save
to persist the solution relevance
object.
pSolution
- Solution idpSolutionClassId
- SolutionClass id of the solution
javax.ejb.CreateException
- If the create fails.public SolutionRelevance getSolutionRelevance(java.lang.String pSolutionId) throws ObjectNotFoundException, javax.ejb.CreateException, PersistenceException
pSolutionId
- Solution RepId
ObjectNotFoundException
- when the solution is not found
javax.ejb.CreateException
- If the create for solution relevance object fails.
PersistenceException
- If unable to save the newly created solution relevance objectpublic void save(SolutionRelevance pSolutionRelevance) throws ObjectNotFoundException, PersistenceException
pSolutionRelevance
- The solution relevance to save.
ObjectNotFoundException
PersistenceException
public int incrementUseCount(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solution
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int decrementUseCount(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solution
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int incrementViewCount(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solution
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int computeHotUseCount(java.lang.String pSolutionId) throws ObjectNotFoundException
ObjectNotFoundException
public int updateHotUseCount(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solutionpSolutionClassId
- The repId of the SolutionClass
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int updateHotUseCount(SolutionRelevance pSolutionRelevance) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solutionpSolutionClassId
- The repId of the SolutionClass
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int incrementHotUseCount(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solution
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int decrementHotUseCount(java.lang.String pSolutionId) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solution
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic int setHotUseCount(java.lang.String pSolutionId, int pHotUseCount) throws javax.ejb.CreateException, ObjectNotFoundException, PersistenceException
pSolutionId
- The RepId of the solutionpHotUseCount
-
javax.ejb.CreateException
- If the create for solution relevance object fails.
ObjectNotFoundException
- when a solution is not found
PersistenceException
- problems saving the solution relevance objectpublic void computeScore(SolutionRelevance pSolutionRelevance)
public int computeHotScore(SolutionRelevance pSolutionRelevance)
public int computeTopScore(SolutionRelevance pSolutionRelevance)
public int computeQOAAScore(SolutionRelevance pSolutionRelevance)
public java.util.Locale getFilterLocale()
public java.util.Collection getAllSolutionRelevance() throws ObjectNotFoundException
ObjectNotFoundException
public java.util.Collection getBatchSolutionRelevance(java.lang.String pLastSolutionRelevanceId, int pBatchSize) throws ObjectNotFoundException
pLastSolutionRelevanceId
- - the id of the last item returned in the previous batch or null if this is the first batch. We retrieve items greater than this id.pBatchSize
- - the number of SolutionRelevance to retrieve
ObjectNotFoundException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |