Crossfire JXClient, Trunk
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
com.realtime.crossfire.jxclient.faces.DefaultFacesManager Class Reference
Inheritance diagram for com.realtime.crossfire.jxclient.faces.DefaultFacesManager:
Inheritance graph
Collaboration diagram for com.realtime.crossfire.jxclient.faces.DefaultFacesManager:
Collaboration graph

Public Member Functions

 DefaultFacesManager (@NotNull final FaceCache faceCache, @NotNull final FaceQueue faceQueue) throws IOException
 
void reset ()
 
- Public Member Functions inherited from com.realtime.crossfire.jxclient.faces.AbstractFacesManager
void addFacesManagerListener (@NotNull final FacesManagerListener facesManagerListener)
 
Face getFace (final int faceNum)
 
Face getFace2 (final int faceNum)
 
ImageIcon getMagicMapImageIcon (final int faceNum, @Nullable final AtomicBoolean returnIsUnknownImage)
 
ImageIcon getOriginalImageIcon (final int faceNum, @Nullable final AtomicBoolean returnIsUnknownImage)
 
ImageIcon getScaledImageIcon (final int faceNum, @Nullable final AtomicBoolean returnIsUnknownImage)
 
void removeFacesManagerListener (@NotNull final FacesManagerListener facesManagerListener)
 

Protected Member Functions

FaceImages getFaceImages (final int faceNum, @Nullable final AtomicBoolean returnIsUnknownImage)
 
- Protected Member Functions inherited from com.realtime.crossfire.jxclient.faces.AbstractFacesManager
 AbstractFacesManager (@NotNull final FaceCache faceCache)
 
void fireFaceUpdated (@NotNull final Face face)
 
Face lookupFace (final int faceNum)
 

Private Attributes

final FaceImages emptyFaceImages
 
final FaceQueue faceQueue
 
final FaceQueueListener faceQueueListener
 
final FaceImages unknownFaceImages
 

Detailed Description

Retrieves Face information by face ID. If a face is not available in-memory, an "unknown" (question mark) face is returned immediately. Asynchronously, the face is loaded from the file cache. If loading fails, the face is requested from the server (and later stored into the file cache). As soon as the face becomes available, all registered FacesManagerListeners are notified.

Author
Andreas Kirschbaum

Definition at line 40 of file DefaultFacesManager.java.

Constructor & Destructor Documentation

◆ DefaultFacesManager()

com.realtime.crossfire.jxclient.faces.DefaultFacesManager.DefaultFacesManager ( @NotNull final FaceCache  faceCache,
@NotNull final FaceQueue  faceQueue 
) throws IOException

Member Function Documentation

◆ getFaceImages()

FaceImages com.realtime.crossfire.jxclient.faces.DefaultFacesManager.getFaceImages ( final int  faceNum,
@Nullable final AtomicBoolean  returnIsUnknownImage 
)
protected

Returns the FaceImages information for a face ID. This function returns immediately even if the face is not loaded. A not loaded face will be updated as soon as loading has finished.

Parameters
faceNumthe face ID
Returns
the face images information

Reimplemented from com.realtime.crossfire.jxclient.faces.AbstractFacesManager.

Definition at line 105 of file DefaultFacesManager.java.

References com.realtime.crossfire.jxclient.faces.DefaultFacesManager.emptyFaceImages, com.realtime.crossfire.jxclient.faces.DefaultFacesManager.faceQueue, com.realtime.crossfire.jxclient.faces.Face.getFaceImages(), com.realtime.crossfire.jxclient.faces.FaceQueue.loadFace(), com.realtime.crossfire.jxclient.faces.AbstractFacesManager.lookupFace(), and com.realtime.crossfire.jxclient.faces.DefaultFacesManager.unknownFaceImages.

Here is the call graph for this function:

◆ reset()

void com.realtime.crossfire.jxclient.faces.DefaultFacesManager.reset ( )

Forgets about pending faces.

Reimplemented from com.realtime.crossfire.jxclient.faces.AbstractFacesManager.

Definition at line 130 of file DefaultFacesManager.java.

References com.realtime.crossfire.jxclient.faces.DefaultFacesManager.faceQueue, and com.realtime.crossfire.jxclient.faces.FaceQueue.reset().

Here is the call graph for this function:

Member Data Documentation

◆ emptyFaceImages

final FaceImages com.realtime.crossfire.jxclient.faces.DefaultFacesManager.emptyFaceImages
private

◆ faceQueue

final FaceQueue com.realtime.crossfire.jxclient.faces.DefaultFacesManager.faceQueue
private

◆ faceQueueListener

final FaceQueueListener com.realtime.crossfire.jxclient.faces.DefaultFacesManager.faceQueueListener
private
Initial value:
= new FaceQueueListener() {
@Override
public void faceLoaded(@NotNull final Face face, @NotNull final FaceImages faceImages) {
face.setFaceImages(faceImages);
}
@Override
public void faceFailed(@NotNull final Face face) {
face.setFaceImages(unknownFaceImages);
}
}

The FaceQueueListener registered to faceQueue.

Definition at line 65 of file DefaultFacesManager.java.

Referenced by com.realtime.crossfire.jxclient.faces.DefaultFacesManager.DefaultFacesManager().

◆ unknownFaceImages

final FaceImages com.realtime.crossfire.jxclient.faces.DefaultFacesManager.unknownFaceImages
private

The documentation for this class was generated from the following file:
com.realtime.crossfire.jxclient.faces.AbstractFacesManager.fireFaceUpdated
void fireFaceUpdated(@NotNull final Face face)
Definition: AbstractFacesManager.java:73
com.realtime.crossfire.jxclient.faces.DefaultFacesManager.unknownFaceImages
final FaceImages unknownFaceImages
Definition: DefaultFacesManager.java:52