|
||||||||||
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
@Service(requiredProperties={"qOAAService","optionService","searchLanguageService","searchService","solutionSecurityUtils","solutionService"}) 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)
NOTE: We did not previously have a base exception class in ATG Service that we threw.
To allow for new exceptions to be thrown, we changed the signature of the functions
to throw a new SvcException base exception. This will allow us to throw new exceptions in the future without
changing the signature of the methods. However, customizations built before 10.0 will need to catch the new SvcException.
The PersistenceException, ObjectException and ObjectNotFoundException now sub-class the SvcException. So does the new
SolutionFieldStorageException. Methods that previously threw javax.ejb.CreateException, javax.ebj.FinderException or javax.ejb.RemoveException now
throw a PersistenceException which is declared as throws SvcException to allow for other SvcExceptions to be thrown in the future.
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)
Computes the hot use count - the number of times solution was linked in last N days |
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(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<SolutionRelevance> |
getAllSolutionRelevance()
|
java.util.Collection<SolutionRelevance> |
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()
Default list size. |
int |
getDefaultOrdering()
The default ordering. |
java.util.Locale |
getFilterLocale()
Sets the locale used to fitler the results. |
java.util.List<java.lang.String> |
getHotSolutionClasses()
get the HotSolutionClasses as configured in the options. |
java.lang.String |
getHotSolutionClassesPropertyName()
|
java.util.Collection<Solution> |
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<Solution> |
getHotSolutions(java.lang.String pSolutionClassId)
Gets the Hot Solutions list |
java.util.Collection<Solution> |
getHotSolutionsAsSolutions()
Gets the Hot Solutions list |
java.util.List<Solution> |
getHotSolutionsAsSolutions(int pMaxSolutions,
java.util.Collection<java.lang.String> pTopicIds,
java.util.Collection<java.lang.String> 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<java.lang.String> |
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<java.lang.String,java.lang.String> |
getListFormulas()
Map of the list type (hot, top or qoaa) and a formula to compute the score for that type. |
java.util.Map<java.lang.String,java.lang.Object> |
getListMax()
A map of the list type (valid types are hot, top and qoaa) and the max number of results to be returned for that list type. |
int |
getListOrderHotSolutions()
The order sLISTORDERING_DESC (1) or sLISTORDERING_ASC (2) of the hot solutions list |
java.util.Map<java.lang.String,java.lang.Object> |
getListOrdering()
A map of the list type (hot, top or qoaa) and the list order - either sLISTORDERING_DESC (1) or sLISTORDERING_ASC (2). |
int |
getListOrderQOAASolutions()
The order sLISTORDERING_DESC (1) or sLISTORDERING_ASC (2) of the qoaa list |
int |
getListOrderTopSolutions()
The order sLISTORDERING_DESC (1) or sLISTORDERING_ASC (2) of the top solutions list |
java.lang.String[] |
getLists()
An array of the list types (valid values are hot, top and qoaa) |
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()
|
atg.svc.repository.service.OptionService |
getOptionService()
|
java.util.Collection<Solution> |
getQOAAList()
Gets the Questions Others are Asking List |
QOAAService |
getQOAAService()
|
RecommendedAnswerService |
getRecommendedAnswerService()
|
atg.svc.search.SearchLanguageService |
getSearchLanguageService()
|
atg.svc.search.SearchService |
getSearchService()
|
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<Solution> |
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<Solution> |
getTopSolutions(int pMaxSolutions,
java.util.Collection<java.lang.String> pTopicIds,
java.util.Collection<java.lang.String> pSolutionClassIds)
Gets the Top Solutions list filtered by constraints and sorted by their top score. |
java.util.Collection<Solution> |
getTopSolutions(java.lang.String pSolutionClassId)
Gets the Top Solutions list |
java.util.Collection<Solution> |
getTopSolutionsAsSolutions()
Gets the Top Solutions list |
java.util.Collection<Solution> |
getTopSolutionsAsSolutions(int pMaxSolutions,
java.util.Collection<java.lang.String> pTopicIds,
java.util.Collection<java.lang.String> 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. |
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<java.lang.String,java.lang.String> pListFormulas)
|
void |
setListMax(java.util.Map<java.lang.String,java.lang.Object> pListMax)
|
void |
setListOrdering(java.util.Map<java.lang.String,java.lang.Object> 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 |
setOptionService(atg.svc.repository.service.OptionService pOptionService)
|
void |
setQOAAService(QOAAService pQOAAService)
|
void |
setRecommendedAnswerService(RecommendedAnswerService pRecommendedAnswerService)
|
void |
setSearchLanguageService(atg.svc.search.SearchLanguageService pSearchLanguageService)
|
void |
setSearchService(atg.svc.search.SearchService pSearchService)
|
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)
|
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, getAdminServletOutputStreamEncoding, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isAdminServletUseServletOutputStream, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setAdminServletOutputStreamEncoding, setAdminServletUseServletOutputStream, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService |
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl |
---|
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogDebugTrace, 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 atg.svc.repository.service.OptionService getOptionService()
public void setOptionService(atg.svc.repository.service.OptionService pOptionService)
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 atg.svc.repository.service.util.SolutionSecurityUtils getSolutionSecurityUtils()
public void setSolutionSecurityUtils(atg.svc.repository.service.util.SolutionSecurityUtils pSolutionSecurityUtils)
public SolutionService getSolutionService()
public void setSolutionService(SolutionService pSolutionService)
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 int getDefaultMax()
public void setDefaultMax(int pDefaultMax)
public int getDefaultOrdering()
public void setDefaultOrdering(int pDefaultOrdering)
public java.util.Map<java.lang.String,java.lang.Object> getListOrdering()
public void setListOrdering(java.util.Map<java.lang.String,java.lang.Object> pListOrdering)
public int getListOrderHotSolutions()
public int getListOrderTopSolutions()
public int getListOrderQOAASolutions()
public java.lang.String[] getLists()
public void setLists(java.lang.String[] pLists)
public java.util.Map<java.lang.String,java.lang.String> getListFormulas()
public void setListFormulas(java.util.Map<java.lang.String,java.lang.String> pListFormulas)
public java.util.Map<java.lang.String,java.lang.Object> getListMax()
public void setListMax(java.util.Map<java.lang.String,java.lang.Object> pListMax)
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 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<java.lang.String> getHotSolutionClasses() throws SvcException, ObjectNotFoundException
OptionService.getArrayValue(String)
If the option is set to null, an empty list is returned which implies "ALL SOLUTION CLASSES"
SvcException
ObjectNotFoundException
public java.util.List<java.lang.String> getHotSolutionTopics() throws SvcException
OptionService.getArrayValue(String)
If the option is set to null, an empty list is returned which implies "ALL TOPICS"
SvcException
public int getHotUseCountWeight() throws ObjectNotFoundException, SvcException
atg.svc.repository.service.SiteService#getIntegerValue(String)
ObjectNotFoundException
- when the site option getHotUseCountWeightPropertyName()
is not found.
SvcException
public int getHotViewCountWeight() throws ObjectNotFoundException, SvcException
atg.svc.repository.service.SiteService#getIntegerValue(String)
ObjectNotFoundException
- when the site option getHotViewCountWeightPropertyName()
is not found.
SvcException
public int getHotUseCountDuration() throws ObjectNotFoundException, SvcException
atg.svc.repository.service.SiteService#getIntegerValue(String)
ObjectNotFoundException
- when the site option getHotUseCountDurationPropertyName()
is not found.
SvcException
public java.util.Collection<Solution> getHotSolutions() throws SvcException, ObjectNotFoundException
Solution.getSolutionRelevance()
.
Solution Releavance objects
ObjectNotFoundException
- When solution not found
SvcException
- When an error occursgetHotSolutionsAsSolutions()
public java.util.Collection<Solution> getHotSolutionsAsSolutions() throws SvcException
Solution objects
SvcException
- When an error occurspublic java.util.Collection<Solution> getHotSolutions(java.lang.String pSolutionClassId) throws SvcException, ObjectNotFoundException
pSolutionClass
- The solution class RepItem
Solution Releavance objects
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic java.util.List<Solution> getHotSolutionsAsSolutions(int pMaxSolutions, java.util.Collection<java.lang.String> pTopicIds, java.util.Collection<java.lang.String> pSolutionClassIds) throws SvcException, 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
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic java.util.Collection<Solution> getTopSolutions() throws SvcException, ObjectNotFoundException
Solution.getSolutionRelevance()
.
Solution Releavance objects
ObjectNotFoundException
- When solution not found
SvcException
- When an error occursgetTopSolutionsAsSolutions()
public java.util.Collection<Solution> getTopSolutions(java.lang.String pSolutionClassId) throws SvcException, ObjectNotFoundException
pSolutionClass
- The solution class RepItem
Solution Releavance objects
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic java.util.Collection<Solution> getTopSolutions(int pMaxSolutions, java.util.Collection<java.lang.String> pTopicIds, java.util.Collection<java.lang.String> pSolutionClassIds) throws SvcException, 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 Releavance objects
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic java.util.Collection<Solution> getTopSolutionsAsSolutions() throws SvcException
Solution objects
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic java.util.Collection<Solution> getTopSolutionsAsSolutions(int pMaxSolutions, java.util.Collection<java.lang.String> pTopicIds, java.util.Collection<java.lang.String> pSolutionClassIds) throws SvcException, 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
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic java.util.Collection<Solution> getQOAAList() throws SvcException
SvcException
- When an error occurspublic 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 SvcException, ObjectNotFoundException
save
to persist the solution relevance
object.
pSolutionId
- Solution RepId
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic SolutionRelevance create(Solution pSolution) throws SvcException
save
to persist the solution relevance
object.
pSolution
- Solution Repository item.
SvcException
- When an error occurspublic SolutionRelevance create(java.lang.String pSolutionId, java.lang.String pSolutionClassId) throws SvcException
save
to persist the solution relevance
object.
pSolution
- Solution idpSolutionClassId
- SolutionClass id of the solution
SvcException
- When an error occurspublic SolutionRelevance getSolutionRelevance(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- Solution RepId
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic void save(SolutionRelevance pSolutionRelevance) throws SvcException, ObjectNotFoundException
pSolutionRelevance
- The solution relevance to save.
SvcException
ObjectNotFoundException
public int incrementUseCount(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solution
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int decrementUseCount(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solution
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int incrementViewCount(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solution
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int computeHotUseCount(java.lang.String pSolutionId) throws ObjectNotFoundException, SvcException
pSolutionId
- The id of the solution
ObjectNotFoundException
SvcException
public int updateHotUseCount(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solutionpSolutionClassId
- The repId of the SolutionClass
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int updateHotUseCount(SolutionRelevance pSolutionRelevance) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solutionpSolutionClassId
- The repId of the SolutionClass
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int incrementHotUseCount(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solution
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int decrementHotUseCount(java.lang.String pSolutionId) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solution
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic int setHotUseCount(java.lang.String pSolutionId, int pHotUseCount) throws SvcException, ObjectNotFoundException
pSolutionId
- The RepId of the solutionpHotUseCount
-
ObjectNotFoundException
- When solution not found
SvcException
- When an error occurspublic void computeScore(SolutionRelevance pSolutionRelevance) throws SvcException
SvcException
public int computeHotScore(SolutionRelevance pSolutionRelevance) throws SvcException
SvcException
public int computeTopScore(SolutionRelevance pSolutionRelevance) throws SvcException
SvcException
public int computeQOAAScore(SolutionRelevance pSolutionRelevance) throws SvcException
SvcException
public java.util.Locale getFilterLocale()
public java.util.Collection<SolutionRelevance> getAllSolutionRelevance() throws SvcException
SvcException
public java.util.Collection<SolutionRelevance> getBatchSolutionRelevance(java.lang.String pLastSolutionRelevanceId, int pBatchSize) throws SvcException
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
SolutionRelevance
SvcException
- When an error occurs
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |