© 2005 BEA Systems, Inc.

com.bea.p13n.ad
Interface AdBucketService

All Superinterfaces:
ContentBucket, EJBObject, Remote

public interface AdBucketService
extends EJBObject, ContentBucket

The remote bean interface for the AdBucketService. The AdBucketService implements the ContentBucket interface and provides ad content to the PlaceholderService. There are two "buckets" of ad that may be searched. Associated with each user is an AdBucket. If the ad isn't found in the users AdBucket then a global AdBucket is searched. When multiple ads are legal, the AdConflictResolver is called to select the "best" ad to be displayed.

The AdBucketService provides methods to add ads to user AdBuckets. In addition, there is a cleanup method which will remove all of the ads associated with a container.

Preview manages the life time of a query preview and allows all possible content matching the query to be rendered and returned to some type of preview object.


Nested Class Summary
 
Nested classes inherited from class com.bea.p13n.placeholder.ContentBucket
ContentBucket.PreviewInfo
 
Method Summary
 void cleanupAdBucket(String containerUID)
          Remove the information about a container from both the user and global ad buckets.
 AdInfo getAdEventInfo(long adBucketId)
          Get the AdInfo required to post an event for the specified bucket id.
 String getContent(String placeholderName, boolean mixGlobals, String userId, String servletBase, Request request, int height, int width)
          Return the content for the requested ad
 Collection getGlobalQueries(String placeholderName)
          Get the list of AdInfos that represent the global queries for the specified placeholder.
 Collection previewContent(String servletBase, String query, boolean renderContent)
          Return a collection of PreviewInfo structures which match all of the content for the query.
 Collection previewContent(String userId, String servletBase, String query)
          Deprecated. Use previewContent(String, String, boolean) instead.
 void removeGlobalQueries(String placeholderName, boolean removeAll)
          Remove queries from the add bucket.
 void setGlobalQuery(String placeholderName, String query, int weight)
          Set a global query for the placeholder.
 boolean userAddAd(AdInfo adInfo, boolean remove)
          Add the adInfo to the user's AdBucket
 int userClearAds(String userId, String placeholderName, String containerUID, String containerType)
          Clear user ads in a bucket.
 
Methods inherited from interface javax.ejb.EJBObject
getEJBHome, getHandle, getPrimaryKey, isIdentical, remove
 

Method Detail

cleanupAdBucket

public void cleanupAdBucket(String containerUID)
                     throws RemoteException,
                            ContentException
Remove the information about a container from both the user and global ad buckets.

Parameters:
containerUID - The name of the container that we are cleaning up
Throws:
RemoteException
ContentException

getAdEventInfo

public AdInfo getAdEventInfo(long adBucketId)
                      throws RemoteException,
                             ContentException
Get the AdInfo required to post an event for the specified bucket id.

The AdInfo returned will only have a bucketId, placeholderName, containerUID, and contextUID.

Returns:
the info on success, null on no such id.
Throws:
RemoteException
ContentException

getContent

public String getContent(String placeholderName,
                         boolean mixGlobals,
                         String userId,
                         String servletBase,
                         Request request,
                         int height,
                         int width)
                  throws RemoteException,
                         ContentException
Return the content for the requested ad

Specified by:
getContent in interface ContentBucket
Parameters:
placeholderName - The name of the placeholder
mixGlobals - Mix globals with bucket ads?
userId - The user id
servletBase - The Web App base for the click thru servlet
request - The HTTP request
height - The desired height
width - The desired width
Returns:
the content of an ad for the placeholder as an XHTML string.
Throws:
ContentException - thrown when there was a failure to get the content
RemoteException

getGlobalQueries

public Collection getGlobalQueries(String placeholderName)
                            throws RemoteException,
                                   ContentException
Get the list of AdInfos that represent the global queries for the specified placeholder.

Throws:
RemoteException
ContentException

previewContent

public Collection previewContent(String servletBase,
                                 String query,
                                 boolean renderContent)
                          throws RemoteException,
                                 ContentException
Return a collection of PreviewInfo structures which match all of the content for the query.

Specified by:
previewContent in interface ContentBucket
Parameters:
servletBase - The Web App base for the click thru servlet
query - The content query to be previewed
renderContent - true to include the rendering content in the preview, false to not.
Returns:
the collection of PreviewInfo structures that would be matched by the content query.
Throws:
RemoteException
ContentException

previewContent

public Collection previewContent(String userId,
                                 String servletBase,
                                 String query)
                          throws RemoteException,
                                 ContentException
Deprecated. Use previewContent(String, String, boolean) instead.

Return a collection of PreviewInfo structures which match all of the content for the query (with rendered content).

Parameters:
userId - the user name.
servletBase - The Web App base for the click thru servlet
query - The content query to be previewed
Returns:
the collection of PreviewInfo structures that would be matched by the content query.
Throws:
RemoteException
ContentException

removeGlobalQueries

public void removeGlobalQueries(String placeholderName,
                                boolean removeAll)
                         throws RemoteException,
                                ContentException
Remove queries from the add bucket. This will remove all or only global queries depending on the removeAll parameter.

Specified by:
removeGlobalQueries in interface ContentBucket
Parameters:
placeholderName - the name of the placeholder
removeAll - if true remove all entries for the placeholder, otherwise simply remove the global entries.
Throws:
RemoteException
ContentException

setGlobalQuery

public void setGlobalQuery(String placeholderName,
                           String query,
                           int weight)
                    throws RemoteException,
                           ContentException
Set a global query for the placeholder. A placeholder may have more than one global query.

Specified by:
setGlobalQuery in interface ContentBucket
Parameters:
placeholderName - the name of the placeholder setting the global query
query - The query expression of the query.
weight - The weight associated with the query
Throws:
RemoteException
ContentException

userAddAd

public boolean userAddAd(AdInfo adInfo,
                         boolean remove)
                  throws RemoteException,
                         ContentException
Add the adInfo to the user's AdBucket

Parameters:
adInfo - the ad related information
remove - if the AdInfo already exists, true to remove it, false to update it.
Returns:
true if the Ad is added, false otherwise
Throws:
Content - when the content cannot be created
RemoteException
ContentException

userClearAds

public int userClearAds(String userId,
                        String placeholderName,
                        String containerUID,
                        String containerType)
                 throws RemoteException,
                        ContentException
Clear user ads in a bucket.

Parameters:
userId - the userId (null for current, only admin users can clear other user's buckets).
placeholderName - the name of the placeholder to clear (null for all placeholders).
containerUID - the uid of the container to clear (null for all containers).
containerType - the type of the container to clear (null for all container types).
Returns:
the number of ad entries cleared.
Throws:
ContentException - thrown on an error.
RemoteException

© 2005 BEA Systems, Inc.

Copyright © 2005 BEA Systems, Inc. All Rights Reserved