atg.svc.repository.beans
Class _Solution_Impl

java.lang.Object
  extended by atg.svc.repository.beans._Solution_Impl
All Implemented Interfaces:
atg.svc.repository.beans.pv.Solution_PV, Solution, java.io.Serializable, javax.ejb.EJBLocalObject
Direct Known Subclasses:
_Solution_BeanImpl, _Solution_ReposImpl

public abstract class _Solution_Impl
extends java.lang.Object
implements atg.svc.repository.beans.pv.Solution_PV, java.io.Serializable

See Also:
Serialized Form

Constructor Summary
_Solution_Impl()
           
 
Method Summary
 java.lang.String _getItemDescriptorName()
           
 java.lang.Class _getObjectInterfaceClass()
           
 void addTopic(java.lang.String topicId)
          Adds a topic to the solution given the topic id
 void copyTo(Solution destination)
          Copies the property values of this instance to another instance of the same data type.
 java.lang.String getDisplayId()
          Gets the displayable solution id - for new solutions this matches the repository id.
 java.lang.String getDisplayTitle()
          Gets the title for the Solution truncated to the configured maximum number of characters.
 java.util.List getExternallyVisiblePropertyFields()
          Gets the property fields visible to all external users
 java.util.List getExternallyVisibleStatementFields()
          Gets the statement fields visible to all external users
 java.lang.Object getFieldValue(java.lang.String name)
          Gets a value for the given property on the solution.
 boolean getIsEditable()
           
 boolean getIsExternallyVisible()
           
 boolean getIsExternallyVisible(java.lang.String segmentName)
           
 boolean getIsVisible()
           
 java.lang.String getTitle()
          Gets the computed title for the Solution.
 java.util.Set getTopics()
          Returns Topic objects instead of topic ids.
 java.lang.Integer getVersion()
           
 java.util.List getVisibleFields()
           
 java.util.List getVisiblePropertyFields()
          Returns the non-statement and non-text fields that are visible to the current user.
 java.util.List getVisibleStatementFields()
          Returns the statement and text fields that are visible to the current user.
 boolean isRemoved()
          Returns true if the underlying object has been removed.
 void setFieldValue(java.lang.String name, java.lang.Object value)
          Sets a value for the given property on the solution.
 void setInternalAudience(java.lang.String[] orgValIds)
          Sets the internal audience on the Solution given a list of OrganizationValue repository ids.
 void setOwningGroup(java.lang.String orgValId)
          Sets the owning group on the Solution given an OrganizationValue repository id.
 void setSolutionClass(java.lang.String solutionClassId)
          Sets the SolutionClass on the Solution given the SolutionClass repository id.
 void setTitle(java.lang.String title)
          Sets the title for the Solution.
 void setTopics(java.util.Set topics)
          Updates the solution's topicIds given a set of Topic objects.
 void updateTopicIds(java.util.Set topicIds)
          Adds/Removes topics to/from the solution given a new set of topic ids.
 void validate()
          Performs validation on the Solution
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface atg.svc.repository.beans.pv.Solution_PV
_isMutable, getAudience, getAudienceSorted, getAuthor, getDateCreated, getDateModified, getFields, getId, getInternalAudience, getInternalAudienceSorted, getLanguage, getLegacyId, getModifiedBy, getOwningGroup, getRawTitle, getRecognition, getRecommendedAnswers, getSolutionClass, getSolutionRelevance, getStatus, getTopicIds, getTopicPaths, isBestBet, prepareInstanceForWrite, setAudience, setAuthor, setBestBet, setDateCreated, setDateModified, setFields, setId, setInternalAudience, setLanguage, setLegacyId, setModifiedBy, setOwningGroup, setRawTitle, setRecognition, setSolutionClass, setStatus, setTopicIds, writeInstance
 
Methods inherited from interface javax.ejb.EJBLocalObject
getEJBLocalHome, getPrimaryKey, isIdentical, remove
 

Constructor Detail

_Solution_Impl

public _Solution_Impl()
Method Detail

isRemoved

public boolean isRemoved()
                  throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Returns true if the underlying object has been removed. False otherwise.

Specified by:
isRemoved in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
isRemoved in interface Solution
Throws:
javax.ejb.EJBException

_getItemDescriptorName

public java.lang.String _getItemDescriptorName()

_getObjectInterfaceClass

public java.lang.Class _getObjectInterfaceClass()

copyTo

public void copyTo(Solution destination)
            throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Copies the property values of this instance to another instance of the same data type. Only properties that are both readable and writable are copied. Each property is copied by calling the getter method on the source instance and setting the result in the destination instance using the setter method.

Specified by:
copyTo in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
copyTo in interface Solution
Throws:
javax.ejb.EJBException

getIsVisible

public boolean getIsVisible()
                     throws javax.ejb.EJBException
Specified by:
getIsVisible in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getIsVisible in interface Solution
Returns:
Returns true if this solution is visible for the current user.
Throws:
javax.ejb.EJBException - A system-level error occurred

getIsExternallyVisible

public boolean getIsExternallyVisible()
                               throws javax.ejb.EJBException
Specified by:
getIsExternallyVisible in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getIsExternallyVisible in interface Solution
Returns:
Returns true if this solution is visible for everyone external.
Throws:
javax.ejb.EJBException - A system-level error occurred

getIsExternallyVisible

public boolean getIsExternallyVisible(java.lang.String segmentName)
                               throws javax.ejb.EJBException
Specified by:
getIsExternallyVisible in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getIsExternallyVisible in interface Solution
Returns:
Returns true if this solution is externally visible for the given segment.
Throws:
javax.ejb.EJBException - A system-level error occurred

getIsEditable

public boolean getIsEditable()
                      throws javax.ejb.EJBException
Specified by:
getIsEditable in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getIsEditable in interface Solution
Returns:
Returns true if this solution is editable for the current user.
Throws:
javax.ejb.EJBException - A system-level error occurred

getVisibleFields

public java.util.List getVisibleFields()
                                throws javax.ejb.EJBException
Specified by:
getVisibleFields in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getVisibleFields in interface Solution
Returns:
Returns the List of SolutionField objects in the order described by the SolutionClass.
Throws:
javax.ejb.EJBException - A system-level error occurred

getVisibleStatementFields

public java.util.List getVisibleStatementFields()
                                         throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Returns the statement and text fields that are visible to the current user.

Specified by:
getVisibleStatementFields in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getVisibleStatementFields in interface Solution
Returns:
Returns a set of SolutionField objects.
Throws:
javax.ejb.EJBException - A system-level error occurred

getVisiblePropertyFields

public java.util.List getVisiblePropertyFields()
                                        throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Returns the non-statement and non-text fields that are visible to the current user.

Specified by:
getVisiblePropertyFields in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getVisiblePropertyFields in interface Solution
Returns:
Returns a set of SolutionField objects.
Throws:
javax.ejb.EJBException - A system-level error occurred

getExternallyVisibleStatementFields

public java.util.List getExternallyVisibleStatementFields()
                                                   throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Gets the statement fields visible to all external users

Specified by:
getExternallyVisibleStatementFields in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getExternallyVisibleStatementFields in interface Solution
Returns:
A List of SolutionField objects
Throws:
javax.ejb.EJBException - A system-level error occurred

getExternallyVisiblePropertyFields

public java.util.List getExternallyVisiblePropertyFields()
                                                  throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Gets the property fields visible to all external users

Specified by:
getExternallyVisiblePropertyFields in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getExternallyVisiblePropertyFields in interface Solution
Returns:
A List of SolutionField objects
Throws:
javax.ejb.EJBException - A system-level error occurred

setFieldValue

public void setFieldValue(java.lang.String name,
                          java.lang.Object value)
                   throws atg.beans.PropertyNotFoundException,
                          javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Sets a value for the given property on the solution.

Specified by:
setFieldValue in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
setFieldValue in interface Solution
Parameters:
name - The name of the property to set. Formatting: see atg.beans.DynamicBeans
value - The value to set
Throws:
atg.beans.PropertyNotFoundException
javax.ejb.EJBException - A system-level error occurred

getFieldValue

public java.lang.Object getFieldValue(java.lang.String name)
                               throws atg.beans.PropertyNotFoundException,
                                      javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Gets a value for the given property on the solution.

Specified by:
getFieldValue in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getFieldValue in interface Solution
Parameters:
name - The name of the property to get. Formatting: see atg.beans.DynamicBeans
Returns:
The value of the property
Throws:
atg.beans.PropertyNotFoundException
javax.ejb.EJBException - A system-level error occurred

getTitle

public java.lang.String getTitle()
                          throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Gets the computed title for the Solution.

Specified by:
getTitle in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getTitle in interface Solution
Throws:
javax.ejb.EJBException - A system-level error occurred

setTitle

public void setTitle(java.lang.String title)
              throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Sets the title for the Solution.

Specified by:
setTitle in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
setTitle in interface Solution
Parameters:
title - The title
Throws:
javax.ejb.EJBException - A system-level error occurred

getDisplayTitle

public java.lang.String getDisplayTitle()
                                 throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Gets the title for the Solution truncated to the configured maximum number of characters.

Specified by:
getDisplayTitle in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getDisplayTitle in interface Solution
Throws:
javax.ejb.EJBException - A system-level error occurred

getTopics

public java.util.Set getTopics()
                        throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Returns Topic objects instead of topic ids.

Specified by:
getTopics in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getTopics in interface Solution
Throws:
javax.ejb.EJBException - A system-level error occurred

setTopics

public void setTopics(java.util.Set topics)
               throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Updates the solution's topicIds given a set of Topic objects.

Specified by:
setTopics in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
setTopics in interface Solution
Parameters:
topics - Set of atg.searchadmin.repository.beans.Topic
Throws:
javax.ejb.EJBException - A system-level error occurred

setSolutionClass

public void setSolutionClass(java.lang.String solutionClassId)
                      throws ObjectNotFoundException,
                             javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Sets the SolutionClass on the Solution given the SolutionClass repository id.

Specified by:
setSolutionClass in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
setSolutionClass in interface Solution
Parameters:
solutionClassId - The repository id of the SolutionClass
Throws:
ObjectNotFoundException
javax.ejb.EJBException - A system-level error occurred

setOwningGroup

public void setOwningGroup(java.lang.String orgValId)
                    throws ObjectNotFoundException,
                           javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Sets the owning group on the Solution given an OrganizationValue repository id.

Specified by:
setOwningGroup in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
setOwningGroup in interface Solution
Parameters:
orgValId - The repository id of the OrganizationValue to set as the owning group
Throws:
ObjectNotFoundException
javax.ejb.EJBException - A system-level error occurred

setInternalAudience

public void setInternalAudience(java.lang.String[] orgValIds)
                         throws ObjectNotFoundException,
                                javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Sets the internal audience on the Solution given a list of OrganizationValue repository ids.

Specified by:
setInternalAudience in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
setInternalAudience in interface Solution
Parameters:
orgValIds - The repository ids of the OrganizationValues to set as the internal audience or null/empty to clear
Throws:
ObjectNotFoundException
javax.ejb.EJBException - A system-level error occurred

addTopic

public void addTopic(java.lang.String topicId)
              throws ObjectNotFoundException,
                     javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Adds a topic to the solution given the topic id

Specified by:
addTopic in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
addTopic in interface Solution
Parameters:
topicId - The id of the topic
Throws:
ObjectNotFoundException
javax.ejb.EJBException - A system-level error occurred

updateTopicIds

public void updateTopicIds(java.util.Set topicIds)
                    throws ObjectNotFoundException,
                           javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Adds/Removes topics to/from the solution given a new set of topic ids. Removes all topics if pTopicIds is null or empty.

Specified by:
updateTopicIds in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
updateTopicIds in interface Solution
Parameters:
topicIds - A set of topic ids
Throws:
ObjectNotFoundException
javax.ejb.EJBException - A system-level error occurred

validate

public void validate()
              throws atg.svc.validation.ValidationException,
                     javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Performs validation on the Solution

Specified by:
validate in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
validate in interface Solution
Throws:
atg.svc.validation.ValidationException
javax.ejb.EJBException - A system-level error occurred

getDisplayId

public java.lang.String getDisplayId()
                              throws javax.ejb.EJBException
Description copied from interface: atg.svc.repository.beans.pv.Solution_PV
Gets the displayable solution id - for new solutions this matches the repository id. For imported solutions, this is the legacyId.

Specified by:
getDisplayId in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getDisplayId in interface Solution
Throws:
javax.ejb.EJBException - A system-level error occurred

getVersion

public java.lang.Integer getVersion()
                             throws javax.ejb.EJBException
Specified by:
getVersion in interface atg.svc.repository.beans.pv.Solution_PV
Specified by:
getVersion in interface Solution
Returns:
Returns version id - null if no version exists for this solution.
Throws:
javax.ejb.EJBException - A system-level error occurred