Switch to new logging API.
git-svn-id: svn+ssh://src.earth.threerings.net/nenya/trunk@510 ed5b42cb-e716-0410-a449-f6a68f950b19
This commit is contained in:
@@ -21,11 +21,10 @@
|
||||
|
||||
package com.threerings;
|
||||
|
||||
import java.util.logging.Logger;
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by this
|
||||
* library.
|
||||
* Contains a reference to the log object used by this library.
|
||||
*/
|
||||
public class NenyaLog
|
||||
{
|
||||
|
||||
@@ -39,7 +39,8 @@ import com.threerings.media.image.ImageManager;
|
||||
import com.threerings.util.DirectionCodes;
|
||||
|
||||
import com.threerings.cast.CompositedActionFrames.ComponentFrames;
|
||||
import com.threerings.cast.Log;
|
||||
|
||||
import static com.threerings.cast.Log.log;
|
||||
|
||||
/**
|
||||
* The character manager provides facilities for constructing sprites that
|
||||
@@ -67,7 +68,7 @@ public class CharacterManager
|
||||
|
||||
// create a cache for our composited action frames
|
||||
int acsize = _cacheSize.getValue();
|
||||
Log.debug("Creating action cache [size=" + acsize + "k].");
|
||||
log.debug("Creating action cache [size=" + acsize + "k].");
|
||||
_frameCache = new LRUHashMap(acsize*1024, new LRUHashMap.ItemSizer() {
|
||||
public int computeSize (Object value) {
|
||||
return (int)((CompositedMultiFrameImage)
|
||||
@@ -147,9 +148,7 @@ public class CharacterManager
|
||||
return sprite;
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Failed to instantiate character sprite " +
|
||||
"[e=" + e + "].");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Failed to instantiate character sprite.", e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -181,7 +180,7 @@ public class CharacterManager
|
||||
if (!_cacheStatThrottle.throttleOp()) {
|
||||
long size = getEstimatedCacheMemoryUsage();
|
||||
int[] eff = _frameCache.getTrackedEffectiveness();
|
||||
Log.debug("CharacterManager LRU [mem=" + (size / 1024) + "k" +
|
||||
log.debug("CharacterManager LRU [mem=" + (size / 1024) + "k" +
|
||||
", size=" + _frameCache.size() + ", hits=" + eff[0] +
|
||||
", misses=" + eff[1] + "].");
|
||||
}
|
||||
@@ -202,12 +201,12 @@ public class CharacterManager
|
||||
{
|
||||
try {
|
||||
if (getActionFrames(desc, action) == null) {
|
||||
Log.warning("Failed to resolve action sequence " +
|
||||
log.warning("Failed to resolve action sequence " +
|
||||
"[desc=" + desc + ", action=" + action + "].");
|
||||
}
|
||||
|
||||
} catch (NoSuchComponentException nsce) {
|
||||
Log.warning("Failed to resolve action sequence " +
|
||||
log.warning("Failed to resolve action sequence " +
|
||||
"[nsce=" + nsce + "].");
|
||||
}
|
||||
}
|
||||
@@ -254,7 +253,7 @@ public class CharacterManager
|
||||
Colorization[][] zations = descrip.getColorizations();
|
||||
Point[] xlations = descrip.getTranslations();
|
||||
|
||||
Log.debug("Compositing action [action=" + action +
|
||||
log.debug("Compositing action [action=" + action +
|
||||
", descrip=" + descrip + "].");
|
||||
|
||||
// this will be used to construct any shadow layers
|
||||
@@ -337,7 +336,7 @@ public class CharacterManager
|
||||
{
|
||||
final ComponentClass cclass = _crepo.getComponentClass(sclass);
|
||||
if (cclass == null) {
|
||||
Log.warning("Components reference non-existent shadow layer " +
|
||||
log.warning("Components reference non-existent shadow layer " +
|
||||
"class [sclass=" + sclass +
|
||||
", scomps=" + StringUtil.toString(scomps) + "].");
|
||||
return null;
|
||||
|
||||
@@ -28,6 +28,8 @@ import javax.swing.SwingUtilities;
|
||||
|
||||
import com.threerings.media.sprite.ImageSprite;
|
||||
|
||||
import static com.threerings.cast.Log.log;
|
||||
|
||||
/**
|
||||
* A character sprite is a sprite that animates itself while walking
|
||||
* about in a scene.
|
||||
@@ -126,7 +128,7 @@ public class CharacterSprite extends ImageSprite
|
||||
{
|
||||
// sanity check
|
||||
if (action == null) {
|
||||
Log.warning("Refusing to set null action sequence " + this + ".");
|
||||
log.warning("Refusing to set null action sequence " + this + ".");
|
||||
Thread.dumpStack();
|
||||
return;
|
||||
}
|
||||
@@ -143,7 +145,7 @@ public class CharacterSprite extends ImageSprite
|
||||
public void setOrientation (int orient)
|
||||
{
|
||||
if (orient < 0 || orient >= FINE_DIRECTION_COUNT) {
|
||||
Log.info("Refusing to set invalid orientation [sprite=" + this +
|
||||
log.info("Refusing to set invalid orientation [sprite=" + this +
|
||||
", orient=" + orient + "].");
|
||||
Thread.dumpStack();
|
||||
return;
|
||||
@@ -257,13 +259,12 @@ public class CharacterSprite extends ImageSprite
|
||||
setFrameRate(actseq.framesPerSecond);
|
||||
|
||||
} catch (NoSuchComponentException nsce) {
|
||||
Log.warning("Character sprite references non-existent " +
|
||||
log.warning("Character sprite references non-existent " +
|
||||
"component [sprite=" + this + ", err=" + nsce + "].");
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Failed to obtain action frames [sprite=" + this +
|
||||
", descrip=" + _descrip + ", action=" + _action + "].");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Failed to obtain action frames [sprite=" + this +
|
||||
", descrip=" + _descrip + ", action=" + _action + "].", e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -282,7 +283,7 @@ public class CharacterSprite extends ImageSprite
|
||||
{
|
||||
if (_descrip.getComponentIds() == null ||
|
||||
_descrip.getComponentIds().length == 0) {
|
||||
Log.warning("Invalid character descriptor [sprite=" + this +
|
||||
log.warning("Invalid character descriptor [sprite=" + this +
|
||||
", descrip=" + _descrip + "].");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
@@ -316,7 +317,7 @@ public class CharacterSprite extends ImageSprite
|
||||
|
||||
// we now need to update the render offset for this frame
|
||||
if (_aframes == null) {
|
||||
Log.warning("Have no action frames! " + _aframes + ".");
|
||||
log.warning("Have no action frames! " + _aframes + ".");
|
||||
} else {
|
||||
_oxoff = _aframes.getXOrigin(_orient, frameIdx);
|
||||
_oyoff = _aframes.getYOrigin(_orient, frameIdx);
|
||||
|
||||
@@ -21,36 +21,12 @@
|
||||
|
||||
package com.threerings.cast;
|
||||
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by
|
||||
* the cast package.
|
||||
* Contains a reference to the log object used by the Cast package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
public static com.samskivert.util.Log log =
|
||||
new com.samskivert.util.Log("cast");
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.debug(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.logStackTrace(com.samskivert.util.Log.WARNING, t);
|
||||
}
|
||||
public static Logger log = Logger.getLogger("cast");
|
||||
}
|
||||
|
||||
@@ -27,9 +27,10 @@ import javax.swing.*;
|
||||
|
||||
import com.samskivert.swing.VGroupLayout;
|
||||
|
||||
import com.threerings.cast.Log;
|
||||
import com.threerings.cast.*;
|
||||
|
||||
import static com.threerings.cast.Log.log;
|
||||
|
||||
/**
|
||||
* The component panel displays the available components for all
|
||||
* component classes and allows the user to choose a set of components
|
||||
@@ -66,7 +67,7 @@ public class ComponentPanel extends JPanel
|
||||
if (ccomps.size() > 0) {
|
||||
add(new ClassEditor(model, cclass, ccomps));
|
||||
} else {
|
||||
Log.info("Not creating editor for empty class " +
|
||||
log.info("Not creating editor for empty class " +
|
||||
"[class=" + cclass + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,10 +28,11 @@ import java.io.ObjectInputStream;
|
||||
|
||||
import com.samskivert.io.StreamUtil;
|
||||
|
||||
import com.threerings.cast.Log;
|
||||
import com.threerings.resource.FileResourceBundle;
|
||||
import com.threerings.resource.ResourceBundle;
|
||||
|
||||
import static com.threerings.cast.Log.log;
|
||||
|
||||
/**
|
||||
* Utility functions related to creating and manipulating component bundles.
|
||||
*/
|
||||
@@ -80,12 +81,12 @@ public class BundleUtil
|
||||
return new ObjectInputStream(bin).readObject();
|
||||
|
||||
} catch (InvalidClassException ice) {
|
||||
Log.warning("Aiya! Serialized object is hosed [bundle=" + bundle +
|
||||
log.warning("Aiya! Serialized object is hosed [bundle=" + bundle +
|
||||
", element=" + path + ", error=" + ice.getMessage() + "].");
|
||||
return null;
|
||||
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Error reading resource from bundle [bundle=" + bundle + ", path=" + path +
|
||||
log.warning("Error reading resource from bundle [bundle=" + bundle + ", path=" + path +
|
||||
", wiping?=" + wipeOnFailure + "].");
|
||||
if (wipeOnFailure) {
|
||||
StreamUtil.close(bin);
|
||||
|
||||
@@ -60,11 +60,12 @@ import com.threerings.cast.CharacterComponent;
|
||||
import com.threerings.cast.ComponentClass;
|
||||
import com.threerings.cast.ComponentRepository;
|
||||
import com.threerings.cast.FrameProvider;
|
||||
import com.threerings.cast.Log;
|
||||
import com.threerings.cast.NoSuchComponentException;
|
||||
import com.threerings.cast.StandardActions;
|
||||
import com.threerings.cast.TrimmedMultiFrameImage;
|
||||
|
||||
import static com.threerings.cast.Log.log;
|
||||
|
||||
/**
|
||||
* A component repository implementation that obtains information from resource bundles.
|
||||
*
|
||||
@@ -227,7 +228,7 @@ public class BundledComponentRepository
|
||||
// look up the component class information
|
||||
ComponentClass clazz = (ComponentClass)_classes.get(cclass);
|
||||
if (clazz == null) {
|
||||
Log.warning("Non-existent component class [class=" + cclass + ", name=" + cname +
|
||||
log.warning("Non-existent component class [class=" + cclass + ", name=" + cname +
|
||||
", id=" + componentId + "].");
|
||||
return;
|
||||
}
|
||||
@@ -247,7 +248,7 @@ public class BundledComponentRepository
|
||||
if (!comps.contains(component)) {
|
||||
comps.add(component);
|
||||
} else {
|
||||
Log.info("Requested to register the same component twice? [comp=" + component + "].");
|
||||
log.info("Requested to register the same component twice? [comp=" + component + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -286,7 +287,7 @@ public class BundledComponentRepository
|
||||
// obtain the action sequence definition for this action
|
||||
ActionSequence actseq = (ActionSequence)_actions.get(action);
|
||||
if (actseq == null) {
|
||||
Log.warning("Missing action sequence definition [action=" + action +
|
||||
log.warning("Missing action sequence definition [action=" + action +
|
||||
", component=" + component + "].");
|
||||
return null;
|
||||
}
|
||||
@@ -330,7 +331,7 @@ public class BundledComponentRepository
|
||||
// if this is a shadow or crop image, no need to freak out as they are optional
|
||||
if (!StandardActions.CROP_TYPE.equals(type) &&
|
||||
!StandardActions.SHADOW_TYPE.equals(type)) {
|
||||
Log.warning("Unable to locate tileset for action '" + imgpath + "' " +
|
||||
log.warning("Unable to locate tileset for action '" + imgpath + "' " +
|
||||
component + ".");
|
||||
if (_wipeOnFailure && _bundle instanceof FileResourceBundle) {
|
||||
((FileResourceBundle)_bundle).wipeBundle(false);
|
||||
@@ -344,8 +345,7 @@ public class BundledComponentRepository
|
||||
return new TileSetFrameImage(aset, actseq);
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Error loading tset for action '" + imgpath + "' " + component + ".");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Error loading tset for action '" + imgpath + "' " + component + ".", e);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,8 @@ import com.samskivert.util.RandomUtil;
|
||||
import com.threerings.cast.CharacterDescriptor;
|
||||
import com.threerings.cast.ComponentClass;
|
||||
import com.threerings.cast.ComponentRepository;
|
||||
import com.threerings.cast.Log;
|
||||
|
||||
import static com.threerings.cast.Log.log;
|
||||
|
||||
/**
|
||||
* Miscellaneous cast utility routines.
|
||||
@@ -52,7 +53,7 @@ public class CastUtil
|
||||
|
||||
// make sure the component class exists
|
||||
if (cclass == null) {
|
||||
Log.warning("Missing definition for component class " +
|
||||
log.warning("Missing definition for component class " +
|
||||
"[class=" + cname + "].");
|
||||
continue;
|
||||
}
|
||||
@@ -60,7 +61,7 @@ public class CastUtil
|
||||
// make sure there are some components in this class
|
||||
Iterator iter = crepo.enumerateComponentIds(cclass);
|
||||
if (!iter.hasNext()) {
|
||||
Log.info("Skipping class for which we have no components " +
|
||||
log.info("Skipping class for which we have no components " +
|
||||
"[class=" + cclass + "].");
|
||||
continue;
|
||||
}
|
||||
@@ -84,7 +85,7 @@ public class CastUtil
|
||||
int idx = RandomUtil.getInt(choices.size());
|
||||
components[ii] = ((Integer)choices.get(idx)).intValue();
|
||||
} else {
|
||||
Log.info("Have no components in class [class=" + cclass + "].");
|
||||
log.info("Have no components in class [class=" + cclass + "].");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -25,6 +25,8 @@ import java.awt.Point;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.geom.Point2D;
|
||||
|
||||
import static com.threerings.geom.Log.log;
|
||||
|
||||
/**
|
||||
* General geometry utilites.
|
||||
*/
|
||||
@@ -200,7 +202,7 @@ public class GeomUtil
|
||||
public static Rectangle grow (Rectangle source, Rectangle target)
|
||||
{
|
||||
if (target == null) {
|
||||
Log.warning("Can't grow with null rectangle [src=" + source + ", tgt=" + target + "].");
|
||||
log.warning("Can't grow with null rectangle [src=" + source + ", tgt=" + target + "].");
|
||||
Thread.dumpStack();
|
||||
} else if (source == null) {
|
||||
source = new Rectangle(target);
|
||||
|
||||
@@ -21,43 +21,12 @@
|
||||
|
||||
package com.threerings.geom;
|
||||
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by
|
||||
* this package.
|
||||
* Contains a reference to the log object used by this package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
public static final String PACKAGE = "geom";
|
||||
|
||||
public static com.samskivert.util.Log log =
|
||||
new com.samskivert.util.Log(PACKAGE);
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.debug(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.logStackTrace(com.samskivert.util.Log.WARNING, t);
|
||||
}
|
||||
|
||||
public static int getLevel ()
|
||||
{
|
||||
return com.samskivert.util.Log.getLevel(PACKAGE);
|
||||
}
|
||||
public static Logger log = Logger.getLogger("com.threerings.geom");
|
||||
}
|
||||
|
||||
@@ -56,6 +56,8 @@ import com.jme.util.Timer;
|
||||
|
||||
import com.threerings.jme.camera.CameraHandler;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Defines a basic application framework providing integration with the
|
||||
* <a href="../presents/package.html">Presents</a> networking system and
|
||||
@@ -217,7 +219,7 @@ public class JmeApp
|
||||
_failures = 0;
|
||||
|
||||
} catch (Throwable t) {
|
||||
Log.logStackTrace(t);
|
||||
log.warning(t);
|
||||
// stick a fork in things if we fail too many times in a row
|
||||
if (++_failures > MAX_SUCCESSIVE_FAILURES) {
|
||||
stop();
|
||||
@@ -231,7 +233,7 @@ public class JmeApp
|
||||
try {
|
||||
cleanup();
|
||||
} catch (Throwable t) {
|
||||
Log.logStackTrace(t);
|
||||
log.warning(t);
|
||||
} finally {
|
||||
exit();
|
||||
}
|
||||
@@ -281,7 +283,7 @@ public class JmeApp
|
||||
try {
|
||||
Thread.sleep(5);
|
||||
} catch (InterruptedException e) {
|
||||
Log.warning("Error waiting for dialog system, " +
|
||||
log.warning("Error waiting for dialog system, " +
|
||||
"using defaults.");
|
||||
}
|
||||
}
|
||||
@@ -427,7 +429,7 @@ public class JmeApp
|
||||
*/
|
||||
protected void reportInitFailure (Throwable t)
|
||||
{
|
||||
Log.logStackTrace(t);
|
||||
log.warning(t);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -40,6 +40,8 @@ import com.jmex.awt.lwjgl.LWJGLCanvas;
|
||||
|
||||
import com.jmex.bui.CanvasRootNode;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Extends the basic {@link JmeApp} with the necessary wiring to use the
|
||||
* GL/AWT bridge to display our GL interface in an AWT component.
|
||||
@@ -56,7 +58,7 @@ public class JmeCanvasApp extends JmeApp
|
||||
try {
|
||||
_canvas = createCanvas();
|
||||
} catch (LWJGLException e) {
|
||||
Log.warning("Failed to create LWJGL canvas [error=" + e + "].");
|
||||
log.warning("Failed to create LWJGL canvas [error=" + e + "].");
|
||||
}
|
||||
((JMECanvas)_canvas).setImplementor(_winimp);
|
||||
_canvas.setBounds(0, 0, width, height);
|
||||
@@ -124,7 +126,7 @@ public class JmeCanvasApp extends JmeApp
|
||||
try {
|
||||
makeCurrent();
|
||||
} catch (LWJGLException e) {
|
||||
Log.warning("Failed to make context current [error=" +
|
||||
log.warning("Failed to make context current [error=" +
|
||||
e + "].");
|
||||
}
|
||||
}
|
||||
@@ -167,7 +169,7 @@ public class JmeCanvasApp extends JmeApp
|
||||
DisplaySystem.updateStates(renderer);
|
||||
|
||||
if (!init()) {
|
||||
Log.warning("JmeCanvasApp init failed.");
|
||||
log.warning("JmeCanvasApp init failed.");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -181,7 +183,7 @@ public class JmeCanvasApp extends JmeApp
|
||||
// we don't process events as the AWT queue handles them
|
||||
_failures = 0;
|
||||
} catch (Throwable t) {
|
||||
Log.logStackTrace(t);
|
||||
log.warning(t);
|
||||
// stick a fork in things if we fail too many
|
||||
// times in a row
|
||||
if (++_failures > MAX_SUCCESSIVE_FAILURES) {
|
||||
|
||||
@@ -21,38 +21,13 @@
|
||||
|
||||
package com.threerings.jme;
|
||||
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by this package.
|
||||
* Contains a reference to the log object used by this package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
/** We dispatch our log messages through this logger. */
|
||||
public static Logger log = Logger.getLogger("com.threerings.nenya.jme");
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.fine(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.log(Level.WARNING, t.getMessage(), t);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,8 @@ import com.jme.input.action.*;
|
||||
import com.jme.input.action.InputActionEvent;
|
||||
|
||||
import com.threerings.jme.JmeApp;
|
||||
import com.threerings.jme.Log;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Sets up camera controls for moving around from a top-down perspective,
|
||||
|
||||
@@ -24,7 +24,7 @@ package com.threerings.jme.camera;
|
||||
import com.jme.math.Vector3f;
|
||||
import com.jme.renderer.Camera;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Moves the camera along a cubic Hermite spline path defined by the start and
|
||||
|
||||
@@ -26,7 +26,7 @@ import com.jme.math.Quaternion;
|
||||
import com.jme.math.Vector3f;
|
||||
import com.jme.renderer.Camera;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Swings the camera around a point of interest (which should be somewhere
|
||||
@@ -78,13 +78,13 @@ public class SwingPath extends CameraPath
|
||||
super(camhand);
|
||||
|
||||
if (pangle == 0) {
|
||||
Log.warning("Requested to swing camera through zero degrees " +
|
||||
log.warning("Requested to swing camera through zero degrees " +
|
||||
"[spot=" + spot + ", paxis=" + paxis +
|
||||
", angvel=" + angvel + ", zoom=" + zoom + "].");
|
||||
pangle = 0.0001f;
|
||||
}
|
||||
if (angvel <= 0) {
|
||||
Log.warning("Requested to swing camera with invalid velocity " +
|
||||
log.warning("Requested to swing camera with invalid velocity " +
|
||||
"[spot=" + spot + ", paxis=" + paxis + ", pangle=" +
|
||||
pangle + ", angvel=" + angvel + ", zoom=" + zoom +
|
||||
"].");
|
||||
|
||||
@@ -46,7 +46,8 @@ import com.threerings.crowd.chat.data.UserMessage;
|
||||
import com.threerings.crowd.data.PlaceObject;
|
||||
|
||||
import com.threerings.jme.JmeContext;
|
||||
import com.threerings.jme.Log;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Displays chat messages and allows for their input.
|
||||
@@ -140,7 +141,7 @@ public class ChatView extends BContainer
|
||||
return true;
|
||||
|
||||
} else {
|
||||
Log.warning("Received unknown message type: " + msg + ".");
|
||||
log.warning("Received unknown message type: " + msg + ".");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -61,9 +61,10 @@ import com.samskivert.util.PropertiesUtil;
|
||||
import com.samskivert.util.RandomUtil;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.SpatialVisitor;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* The base node for models.
|
||||
*/
|
||||
@@ -594,7 +595,7 @@ public class Model extends ModelNode
|
||||
return anim;
|
||||
}
|
||||
}
|
||||
Log.warning("Requested unknown animation [name=" + name + "].");
|
||||
log.warning("Requested unknown animation [name=" + name + "].");
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -66,9 +66,10 @@ import com.jme.util.geom.BufferUtils;
|
||||
import com.samskivert.util.PropertiesUtil;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.ShaderCache;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A {@link TriMesh} with a serialization mechanism tailored to stored models.
|
||||
*/
|
||||
|
||||
@@ -40,10 +40,11 @@ import com.jme.util.export.JMEImporter;
|
||||
import com.jme.util.export.InputCapsule;
|
||||
import com.jme.util.export.OutputCapsule;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
import com.threerings.jme.util.ShaderCache;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A {@link Node} with a serialization mechanism tailored to stored models.
|
||||
*/
|
||||
|
||||
@@ -36,9 +36,10 @@ import com.jme.util.export.OutputCapsule;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A procedural animation that rotates a node around at a constant angular
|
||||
* velocity.
|
||||
|
||||
@@ -60,11 +60,12 @@ import com.samskivert.util.ArrayUtil;
|
||||
import com.samskivert.util.HashIntMap;
|
||||
import com.samskivert.util.ListUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
import com.threerings.jme.util.ShaderCache;
|
||||
import com.threerings.jme.util.ShaderConfig;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A triangle mesh that deforms according to a bone hierarchy.
|
||||
*/
|
||||
|
||||
@@ -37,11 +37,12 @@ import com.jme.util.export.OutputCapsule;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
import com.threerings.jme.util.JmeUtil.FrameState;
|
||||
import com.threerings.jme.util.SpatialVisitor;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Animates a model's textures by flipping between different parts.
|
||||
*/
|
||||
|
||||
@@ -37,9 +37,10 @@ import com.jme.util.export.OutputCapsule;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.SpatialVisitor;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A procedural animation that translates the model's textures at a constant velocity.
|
||||
*/
|
||||
@@ -54,7 +55,7 @@ public class TextureTranslator extends TextureController
|
||||
if (vel != null && vel.length == 2) {
|
||||
_velocity = new Vector2f(vel[0], vel[1]);
|
||||
} else {
|
||||
Log.warning("Invalid velocity [velocity=" + velstr + "].");
|
||||
log.warning("Invalid velocity [velocity=" + velstr + "].");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,9 +36,10 @@ import com.jme.util.export.OutputCapsule;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A procedural animation that moves a node along a straight line at a constant velocity (then
|
||||
* either repeats or moves it in the other direction).
|
||||
|
||||
@@ -26,7 +26,7 @@ import com.jme.scene.Spatial;
|
||||
|
||||
import com.samskivert.util.ObserverList;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Represents a visual entity that one controls as a single unit. Sprites
|
||||
@@ -161,7 +161,7 @@ public class Sprite extends Node
|
||||
public void pathCompleted ()
|
||||
{
|
||||
if (_path == null) {
|
||||
Log.warning("pathCompleted() called on pathless sprite " +
|
||||
log.warning("pathCompleted() called on pathless sprite " +
|
||||
"(re-completed?) [sprite=" + this + "].");
|
||||
Thread.dumpStack();
|
||||
return;
|
||||
|
||||
@@ -27,7 +27,7 @@ import java.util.HashMap;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Used to manage data about which tiles fringe on which others and how
|
||||
@@ -54,7 +54,7 @@ public class FringeConfiguration implements Serializable
|
||||
if (record.isValid()) {
|
||||
fringes.add(record);
|
||||
} else {
|
||||
Log.warning("Not adding invalid fringe record [tile=" + this +
|
||||
log.warning("Not adding invalid fringe record [tile=" + this +
|
||||
", fringe=" + record + "].");
|
||||
}
|
||||
}
|
||||
@@ -112,7 +112,7 @@ public class FringeConfiguration implements Serializable
|
||||
if (record.isValid()) {
|
||||
_trecs.put(record.type, record);
|
||||
} else {
|
||||
Log.warning("Refusing to add invalid tile record " +
|
||||
log.warning("Refusing to add invalid tile record " +
|
||||
"[tile=" + record + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ import com.samskivert.util.QuickSort;
|
||||
import com.threerings.media.image.ImageUtil;
|
||||
import com.threerings.media.tile.TileUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Computes fringe tile images according to the rules in an associated
|
||||
@@ -148,7 +148,7 @@ public class TileFringer
|
||||
|
||||
BufferedImage source = _isrc.getTileSource(baseType);
|
||||
if (source == null) {
|
||||
Log.warning("Missing source tile [type=" + baseType + "].");
|
||||
log.warning("Missing source tile [type=" + baseType + "].");
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -187,7 +187,7 @@ public class TileFringer
|
||||
BufferedImage fsimg = (frec == null) ? null :
|
||||
_isrc.getFringeSource(frec.name);
|
||||
if (fsimg == null) {
|
||||
Log.warning("Missing fringe source image [type=" + fringerType +
|
||||
log.warning("Missing fringe source image [type=" + fringerType +
|
||||
", hash=" + hashValue + ", frec=" + frec + "].");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -30,11 +30,12 @@ import com.samskivert.xml.SetPropertyFieldsRule;
|
||||
|
||||
import com.threerings.tools.xml.CompiledConfigParser;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.tile.FringeConfiguration.TileRecord;
|
||||
import com.threerings.jme.tile.FringeConfiguration.FringeRecord;
|
||||
import com.threerings.jme.tile.FringeConfiguration;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Parses fringe config definitions, which look like so (with angle
|
||||
* brackets instead of square):
|
||||
|
||||
@@ -36,12 +36,13 @@ import com.jme.scene.Spatial;
|
||||
|
||||
import com.samskivert.util.Tuple;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.model.Model;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
|
||||
import com.threerings.jme.tools.ModelDef.TransformNode;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A basic representation for keyframe animations.
|
||||
*/
|
||||
|
||||
@@ -53,7 +53,6 @@ import com.samskivert.util.PropertiesUtil;
|
||||
import com.samskivert.util.StringUtil;
|
||||
import com.samskivert.util.Tuple;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.model.Model;
|
||||
import com.threerings.jme.model.ModelController;
|
||||
import com.threerings.jme.model.ModelMesh;
|
||||
@@ -62,6 +61,8 @@ import com.threerings.jme.model.SkinMesh;
|
||||
import com.threerings.jme.util.JmeUtil;
|
||||
import com.threerings.jme.util.SpatialVisitor;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* An intermediate representation for models used to store data parsed from
|
||||
* XML and convert it into JME nodes.
|
||||
@@ -130,7 +131,7 @@ public class ModelDef
|
||||
((ModelNode)pnode).attachChild(_spatial);
|
||||
|
||||
} else if (parent != null) {
|
||||
Log.warning("Missing or invalid parent node [spatial=" +
|
||||
log.warning("Missing or invalid parent node [spatial=" +
|
||||
name + ", parent=" + parent + "].");
|
||||
}
|
||||
}
|
||||
@@ -626,7 +627,7 @@ public class ModelDef
|
||||
if (node instanceof ModelNode) {
|
||||
bones.add((ModelNode)node);
|
||||
} else {
|
||||
Log.warning("Missing or invalid bone for bone weight " +
|
||||
log.warning("Missing or invalid bone for bone weight " +
|
||||
"[bone=" + bone + "].");
|
||||
}
|
||||
}
|
||||
@@ -883,7 +884,7 @@ public class ModelDef
|
||||
Spatial target = node.equals(model.getName()) ?
|
||||
model : nodes.get(node);
|
||||
if (target == null) {
|
||||
Log.warning("Missing controller node [name=" + node + "].");
|
||||
log.warning("Missing controller node [name=" + node + "].");
|
||||
continue;
|
||||
}
|
||||
ModelController ctrl = createController(subProps, target);
|
||||
@@ -912,7 +913,7 @@ public class ModelDef
|
||||
try {
|
||||
ctrl = (ModelController)Class.forName(cname).newInstance();
|
||||
} catch (Exception e) {
|
||||
Log.warning("Error instantiating controller [class=" + cname +
|
||||
log.warning("Error instantiating controller [class=" + cname +
|
||||
", error=" + e + "].");
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -110,13 +110,14 @@ import com.threerings.util.MessageBundle;
|
||||
import com.threerings.util.MessageManager;
|
||||
|
||||
import com.threerings.jme.JmeCanvasApp;
|
||||
import com.threerings.jme.Log;
|
||||
import com.threerings.jme.camera.CameraHandler;
|
||||
import com.threerings.jme.model.Model;
|
||||
import com.threerings.jme.model.TextureProvider;
|
||||
import com.threerings.jme.util.ShaderCache;
|
||||
import com.threerings.jme.util.SpatialVisitor;
|
||||
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* A simple viewer application that allows users to examine models and their animations by loading
|
||||
* them from their uncompiled <code>.properties</code> / <code>.mxml</code> representations or
|
||||
@@ -136,7 +137,7 @@ public class ModelViewer extends JmeCanvasApp
|
||||
System.setErr(logOut);
|
||||
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failed to open debug log [path=" + dlog +
|
||||
log.warning("Failed to open debug log [path=" + dlog +
|
||||
", error=" + ioe + "].");
|
||||
}
|
||||
}
|
||||
@@ -731,7 +732,7 @@ public class ModelViewer extends JmeCanvasApp
|
||||
Texture tex = TextureManager.loadTexture(file.toString(),
|
||||
Texture.MM_LINEAR_LINEAR, Texture.FM_LINEAR);
|
||||
if (tex == null) {
|
||||
Log.warning("Couldn't find texture [path=" + file +
|
||||
log.warning("Couldn't find texture [path=" + file +
|
||||
"].");
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -230,7 +230,7 @@ public class ImageCache
|
||||
try {
|
||||
bufimg = _rsrcmgr.getImageResource(rsrcPath);
|
||||
} catch (Throwable t) {
|
||||
log.log(Level.WARNING, "Unable to load image resource " +
|
||||
log.warning("Unable to load image resource " +
|
||||
"[path=" + rsrcPath + "].", t);
|
||||
// cope; return an error image of abitrary size
|
||||
bufimg = ImageUtil.createErrorImage(64, 64);
|
||||
@@ -280,7 +280,7 @@ public class ImageCache
|
||||
if (returnNull) {
|
||||
return null;
|
||||
}
|
||||
log.log(Level.WARNING, "Unable to load image resource [path=" + rsrcPath + "].", t);
|
||||
log.warning("Unable to load image resource [path=" + rsrcPath + "].", t);
|
||||
// cope; return an error image of abitrary size
|
||||
bufimg = ImageUtil.createErrorImage(64, 64);
|
||||
}
|
||||
@@ -324,7 +324,7 @@ public class ImageCache
|
||||
if (returnNull) {
|
||||
return null;
|
||||
}
|
||||
log.log(Level.WARNING, "Unable to load image resource [path=" + rsrcPath + "].", t);
|
||||
log.warning("Unable to load image resource [path=" + rsrcPath + "].", t);
|
||||
// cope; return an error image of abitrary size
|
||||
silimg = ImageUtil.createErrorImage(64, 64);
|
||||
}
|
||||
@@ -362,7 +362,7 @@ public class ImageCache
|
||||
try {
|
||||
image = _rsrcmgr.getImageResource(rsrcPath);
|
||||
} catch (Throwable t) {
|
||||
log.log(Level.WARNING, "Unable to load image resource [path=" + rsrcPath + "].", t);
|
||||
log.warning("Unable to load image resource [path=" + rsrcPath + "].", t);
|
||||
// cope; return an error image of abitrary size
|
||||
image = ImageUtil.createErrorImage(64, 64);
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ import com.jme.scene.Controller;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.jme.Log;
|
||||
import static com.threerings.jme.Log.log;
|
||||
|
||||
/**
|
||||
* Some static classes and methods of general utility to applications using JME.
|
||||
@@ -159,7 +159,7 @@ public class JmeUtil
|
||||
if (vals != null && vals.length == 3) {
|
||||
return new Vector3f(vals[0], vals[1], vals[2]);
|
||||
} else {
|
||||
Log.warning("Invalid vector [vector=" + vector + "].");
|
||||
log.warning("Invalid vector [vector=" + vector + "].");
|
||||
}
|
||||
}
|
||||
return null;
|
||||
@@ -179,7 +179,7 @@ public class JmeUtil
|
||||
} else if ("wrap".equals(type)) {
|
||||
return Controller.RT_WRAP;
|
||||
} else if (type != null) {
|
||||
Log.warning("Invalid repeat type [type=" + type + "].");
|
||||
log.warning("Invalid repeat type [type=" + type + "].");
|
||||
}
|
||||
return defaultType;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,8 @@ import java.awt.geom.Rectangle2D;
|
||||
import com.samskivert.util.ObserverList;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Something that can be rendered on the media panel.
|
||||
*/
|
||||
@@ -216,7 +218,7 @@ public abstract class AbstractMedia
|
||||
if (_mgr != null) {
|
||||
_mgr.queueNotification(_observers, amop);
|
||||
} else {
|
||||
Log.warning("Have no manager, dropping notification " +
|
||||
log.warning("Have no manager, dropping notification " +
|
||||
"[media=" + this + ", op=" + amop + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,6 +32,8 @@ import com.samskivert.util.ObserverList.ObserverOp;
|
||||
import com.samskivert.util.ObserverList;
|
||||
import com.samskivert.util.Tuple;
|
||||
|
||||
import static com.threerings.resource.Log.log;
|
||||
|
||||
/**
|
||||
* Manages, ticks, and paints {@link AbstractMedia}.
|
||||
*/
|
||||
@@ -109,8 +111,7 @@ public abstract class AbstractMediaManager
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Failed to render media [media=" + media + ", e=" + e + "].");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Failed to render media [media=" + media + "].", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -124,7 +125,7 @@ public abstract class AbstractMediaManager
|
||||
public void fastForward (long timeDelta)
|
||||
{
|
||||
if (_tickStamp > 0) {
|
||||
Log.warning("Egads! Asked to fastForward() during a tick.");
|
||||
log.warning("Egads! Asked to fastForward() during a tick.");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
|
||||
@@ -161,7 +162,7 @@ public abstract class AbstractMediaManager
|
||||
public void renderOrderDidChange (AbstractMedia media)
|
||||
{
|
||||
if (_tickStamp > 0) {
|
||||
Log.warning("Egads! Render order changed during a tick.");
|
||||
log.warning("Egads! Render order changed during a tick.");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
|
||||
@@ -189,7 +190,7 @@ public abstract class AbstractMediaManager
|
||||
protected boolean insertMedia (AbstractMedia media)
|
||||
{
|
||||
if (_media.contains(media)) {
|
||||
Log.warning("Attempt to insert media more than once [media=" + media + "].");
|
||||
log.warning("Attempt to insert media more than once [media=" + media + "].");
|
||||
Thread.dumpStack();
|
||||
return false;
|
||||
}
|
||||
@@ -241,7 +242,7 @@ public abstract class AbstractMediaManager
|
||||
}
|
||||
return true;
|
||||
}
|
||||
Log.warning("Attempt to remove media that wasn't inserted [media=" + media + "].");
|
||||
log.warning("Attempt to remove media that wasn't inserted [media=" + media + "].");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -252,7 +253,7 @@ public abstract class AbstractMediaManager
|
||||
protected void clearMedia ()
|
||||
{
|
||||
if (_tickStamp > 0) {
|
||||
Log.warning("Egads! Requested to clearMedia() during a tick.");
|
||||
log.warning("Egads! Requested to clearMedia() during a tick.");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
|
||||
|
||||
@@ -47,6 +47,8 @@ import com.samskivert.util.ListUtil;
|
||||
import com.samskivert.util.RunAnywhere;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Used to get Swing's repainting to jive with our active rendering strategy.
|
||||
*
|
||||
@@ -70,7 +72,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
{
|
||||
Component vroot = null;
|
||||
if (DEBUG) {
|
||||
Log.info("Maybe invalidating " + toString(comp) + ".");
|
||||
log.info("Maybe invalidating " + toString(comp) + ".");
|
||||
}
|
||||
|
||||
// locate the validation root for this component
|
||||
@@ -101,7 +103,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
// widget hierarchy
|
||||
if (vroot == null) {
|
||||
if (DEBUG) {
|
||||
Log.info("Skipping vrootless component: " + toString(comp));
|
||||
log.info("Skipping vrootless component: " + toString(comp));
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -110,7 +112,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
// that is showing
|
||||
if (getRoot(vroot) == null) {
|
||||
if (DEBUG) {
|
||||
Log.info("Skipping rootless component [comp=" + toString(comp) +
|
||||
log.info("Skipping rootless component [comp=" + toString(comp) +
|
||||
", vroot=" + toString(vroot) + "].");
|
||||
}
|
||||
return;
|
||||
@@ -119,7 +121,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
// add the invalid component to our list and we'll validate it on the next frame
|
||||
if (!ListUtil.containsRef(_invalid, vroot)) {
|
||||
if (DEBUG) {
|
||||
Log.info("Invalidating " + toString(vroot) + ".");
|
||||
log.info("Invalidating " + toString(vroot) + ".");
|
||||
}
|
||||
_invalid = ListUtil.add(_invalid, vroot);
|
||||
}
|
||||
@@ -151,7 +153,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
}
|
||||
|
||||
if (DEBUG) {
|
||||
Log.info("Dirtying component [comp=" + toString(comp) +
|
||||
log.info("Dirtying component [comp=" + toString(comp) +
|
||||
", drect=" + StringUtil.toString(new Rectangle(x, y, width, height)) + "].");
|
||||
}
|
||||
|
||||
@@ -221,7 +223,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
for (int ii = 0; ii < icount; ii++) {
|
||||
if (invalid[ii] != null) {
|
||||
if (DEBUG) {
|
||||
Log.info("Validating " + invalid[ii]);
|
||||
log.info("Validating " + invalid[ii]);
|
||||
}
|
||||
((Component)invalid[ii]).validate();
|
||||
}
|
||||
@@ -275,7 +277,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
drect.y = y;
|
||||
|
||||
if (DEBUG) {
|
||||
Log.info("Found dirty parent [comp=" + toString(comp) +
|
||||
log.info("Found dirty parent [comp=" + toString(comp) +
|
||||
", drect=" + StringUtil.toString(drect) +
|
||||
", pcomp=" + toString(c) +
|
||||
", prect=" + StringUtil.toString(prect) + "].");
|
||||
@@ -283,7 +285,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
prect.add(drect);
|
||||
|
||||
if (DEBUG) {
|
||||
Log.info("New prect " + StringUtil.toString(prect));
|
||||
log.info("New prect " + StringUtil.toString(prect));
|
||||
}
|
||||
|
||||
// remove the child component and be on our way
|
||||
@@ -361,7 +363,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
// instance
|
||||
if (root == _root) {
|
||||
if (DEBUG) {
|
||||
Log.info("Repainting [comp=" + toString(comp) + StringUtil.toString(_cbounds) +
|
||||
log.info("Repainting [comp=" + toString(comp) + StringUtil.toString(_cbounds) +
|
||||
", ocomp=" + toString(ocomp) +
|
||||
", drect=" + StringUtil.toString(drect) + "].");
|
||||
}
|
||||
@@ -374,8 +376,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
ocomp.paint(g);
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Exception while painting component [comp=" + ocomp + "].");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Exception while painting component [comp=" + ocomp + "].", e);
|
||||
}
|
||||
g.translate(-_cbounds.x, -_cbounds.y);
|
||||
|
||||
@@ -385,7 +386,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
|
||||
} else if (root != null) {
|
||||
if (DEBUG) {
|
||||
Log.info("Repainting old-school [comp=" + toString(comp) +
|
||||
log.info("Repainting old-school [comp=" + toString(comp) +
|
||||
", ocomp=" + toString(ocomp) + ", root=" + toString(root) +
|
||||
", bounds=" + StringUtil.toString(_cbounds) + "].");
|
||||
dumpHierarchy(comp);
|
||||
@@ -431,7 +432,7 @@ public class ActiveRepaintManager extends RepaintManager
|
||||
protected static void dumpHierarchy (Component comp)
|
||||
{
|
||||
for (String indent = ""; comp != null; indent += " ") {
|
||||
Log.info(indent + toString(comp));
|
||||
log.info(indent + toString(comp));
|
||||
comp = comp.getParent();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,6 +27,8 @@ import java.awt.GraphicsConfiguration;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.image.VolatileImage;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A {@link FrameManager} extension that uses a volatile off-screen image
|
||||
* to do its rendering.
|
||||
@@ -53,7 +55,7 @@ public class BackFrameManager extends FrameManager
|
||||
|
||||
// if we've changed resolutions, recreate the buffer
|
||||
if (valres == VolatileImage.IMAGE_INCOMPATIBLE) {
|
||||
Log.info("Back buffer incompatible, recreating.");
|
||||
log.info("Back buffer incompatible, recreating.");
|
||||
createBackBuffer(gc);
|
||||
}
|
||||
|
||||
|
||||
@@ -28,6 +28,8 @@ import java.awt.ImageCapabilities;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.image.BufferStrategy;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A {@link FrameManager} extension that uses a flip-buffer (via {@link
|
||||
* BufferStrategy} to do its rendering.
|
||||
@@ -45,7 +47,7 @@ public class FlipFrameManager extends FrameManager
|
||||
try {
|
||||
_window.createBufferStrategy(2, cap);
|
||||
} catch (AWTException ae) {
|
||||
Log.warning("Failed creating flip bufstrat: " + ae + ".");
|
||||
log.warning("Failed creating flip bufstrat: " + ae + ".");
|
||||
// fall back to one without custom capabilities
|
||||
_window.createBufferStrategy(2);
|
||||
}
|
||||
@@ -62,7 +64,7 @@ public class FlipFrameManager extends FrameManager
|
||||
|
||||
// dirty everything if we're not incrementally rendering
|
||||
if (!incremental) {
|
||||
Log.info("Doing non-incremental render; contents lost " +
|
||||
log.info("Doing non-incremental render; contents lost " +
|
||||
"[lost=" + _bufstrat.contentsLost() +
|
||||
", rest=" + _bufstrat.contentsRestored() + "].");
|
||||
_root.getRootPane().revalidate();
|
||||
|
||||
@@ -36,11 +36,15 @@ import com.samskivert.swing.RuntimeAdjust;
|
||||
import com.samskivert.util.ListUtil;
|
||||
import com.samskivert.util.RunAnywhere;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.util.unsafe.Unsafe;
|
||||
|
||||
import com.threerings.media.timer.CalibratingTimer;
|
||||
import com.threerings.media.timer.MediaTimer;
|
||||
import com.threerings.media.timer.MillisTimer;
|
||||
import com.threerings.media.util.TrailingAverage;
|
||||
import com.threerings.util.unsafe.Unsafe;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Provides a central point from which the computation for each "frame" or tick can be dispatched.
|
||||
@@ -132,7 +136,7 @@ public abstract class FrameManager
|
||||
}
|
||||
}
|
||||
if (timer == null) {
|
||||
Log.info("Can't use high performance timer, reverting to " +
|
||||
log.info("Can't use high performance timer, reverting to " +
|
||||
"System.currentTimeMillis() based timer.");
|
||||
timer = new MillisTimer();
|
||||
}
|
||||
@@ -172,7 +176,7 @@ public abstract class FrameManager
|
||||
{
|
||||
Object[] nparts = ListUtil.testAndAddRef(_participants, participant);
|
||||
if (nparts == null) {
|
||||
Log.warning("Refusing to add duplicate frame participant! " + participant);
|
||||
log.warning("Refusing to add duplicate frame participant! " + participant);
|
||||
} else {
|
||||
_participants = nparts;
|
||||
}
|
||||
@@ -395,7 +399,7 @@ public abstract class FrameManager
|
||||
{
|
||||
long gap = tickStamp - _lastTickStamp;
|
||||
if (_lastTickStamp != 0 && gap > (HANG_DEBUG ? HANG_GAP : BIG_GAP)) {
|
||||
Log.debug("Long tick delay [delay=" + gap + "ms].");
|
||||
log.debug("Long tick delay [delay=" + gap + "ms].");
|
||||
}
|
||||
_lastTickStamp = tickStamp;
|
||||
|
||||
@@ -403,8 +407,7 @@ public abstract class FrameManager
|
||||
try {
|
||||
_repainter.validateComponents();
|
||||
} catch (Throwable t) {
|
||||
Log.warning("Failure validating components.");
|
||||
Log.logStackTrace(t);
|
||||
log.warning("Failure validating components.", t);
|
||||
}
|
||||
|
||||
// tick all of our frame participants
|
||||
@@ -425,15 +428,14 @@ public abstract class FrameManager
|
||||
if (HANG_DEBUG) {
|
||||
long delay = (System.currentTimeMillis() - start);
|
||||
if (delay > HANG_GAP) {
|
||||
Log.info("Whoa nelly! Ticker took a long time " +
|
||||
log.info("Whoa nelly! Ticker took a long time " +
|
||||
"[part=" + part + ", time=" + delay + "ms].");
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Throwable t) {
|
||||
Log.warning("Frame participant choked during tick " +
|
||||
"[part=" + StringUtil.safeToString(part) + "].");
|
||||
Log.logStackTrace(t);
|
||||
log.warning("Frame participant choked during tick " +
|
||||
"[part=" + StringUtil.safeToString(part) + "].", t);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -506,8 +508,7 @@ public abstract class FrameManager
|
||||
|
||||
} catch (Throwable t) {
|
||||
String ptos = StringUtil.safeToString(part);
|
||||
Log.warning("Frame participant choked during paint [part=" + ptos + "].");
|
||||
Log.logStackTrace(t);
|
||||
log.warning("Frame participant choked during paint [part=" + ptos + "].", t);
|
||||
}
|
||||
|
||||
// render any components in our layered pane that are not in the default layer
|
||||
@@ -517,7 +518,7 @@ public abstract class FrameManager
|
||||
if (HANG_DEBUG) {
|
||||
long delay = (System.currentTimeMillis() - start);
|
||||
if (delay > HANG_GAP) {
|
||||
Log.warning("Whoa nelly! Painter took a long time " +
|
||||
log.warning("Whoa nelly! Painter took a long time " +
|
||||
"[part=" + part + ", time=" + delay + "ms].");
|
||||
}
|
||||
}
|
||||
@@ -603,8 +604,7 @@ public abstract class FrameManager
|
||||
try {
|
||||
comp.paint(g);
|
||||
} catch (Exception e) {
|
||||
Log.warning("Component choked while rendering.");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Component choked while rendering.", e);
|
||||
}
|
||||
g.translate(-_tbounds.x, -_tbounds.y);
|
||||
}
|
||||
@@ -615,7 +615,7 @@ public abstract class FrameManager
|
||||
{
|
||||
public void run ()
|
||||
{
|
||||
Log.info("Frame manager ticker running " +
|
||||
log.info("Frame manager ticker running " +
|
||||
"[sleepGran=" + _sleepGranularity.getValue() + "].");
|
||||
while (_running) {
|
||||
long start = 0L;
|
||||
@@ -629,14 +629,14 @@ public abstract class FrameManager
|
||||
getPerfMetrics()[0].record((int)(woke-start)/100);
|
||||
int elapsed = (int)(woke-start);
|
||||
if (elapsed > _sleepGranularity.getValue()*1500) {
|
||||
Log.warning("Long tick [elapsed=" + elapsed + "us].");
|
||||
log.warning("Long tick [elapsed=" + elapsed + "us].");
|
||||
}
|
||||
}
|
||||
|
||||
// work around sketchy bug on WinXP that causes the clock to leap into the past
|
||||
// from time to time
|
||||
if (woke < _lastAttempt) {
|
||||
Log.warning("Zoiks! We've leapt into the past, coping as best we can " +
|
||||
log.warning("Zoiks! We've leapt into the past, coping as best we can " +
|
||||
"[dt=" + (woke - _lastAttempt) + "].");
|
||||
_lastAttempt = woke;
|
||||
}
|
||||
|
||||
@@ -41,6 +41,8 @@ import com.threerings.media.tile.TileIcon;
|
||||
import com.threerings.media.tile.TileManager;
|
||||
import com.threerings.media.tile.TileSet;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Manages the creation of icons from tileset images. The icon manager is
|
||||
* provided with a configuration file, which maps icon set identifiers to
|
||||
@@ -149,7 +151,7 @@ public class IconManager
|
||||
return new TileIcon(set.getTile(index));
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Unable to load icon [iconSet=" + iconSet +
|
||||
log.warning("Unable to load icon [iconSet=" + iconSet +
|
||||
", index=" + index + ", error=" + e + "].");
|
||||
}
|
||||
|
||||
|
||||
@@ -21,39 +21,13 @@
|
||||
|
||||
package com.threerings.media;
|
||||
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by
|
||||
* the media services package.
|
||||
* Contains a reference to the log object used by the media services package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
/** We dispatch our log messages through this logger. */
|
||||
public static Logger log = Logger.getLogger("com.threerings.media");
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.fine(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.log(Level.WARNING, t.getMessage(), t);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ import java.awt.Window;
|
||||
import javax.swing.JApplet;
|
||||
import javax.swing.RepaintManager;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* When using the {@link FrameManager} in an Applet, one must use this
|
||||
|
||||
@@ -32,7 +32,7 @@ import javax.swing.JFrame;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* When using the {@link FrameManager}, one must use this top-level frame
|
||||
|
||||
@@ -57,6 +57,8 @@ import com.threerings.media.sprite.action.CommandSprite;
|
||||
import com.threerings.media.sprite.action.DisableableSprite;
|
||||
import com.threerings.media.sprite.action.HoverSprite;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Provides a useful extensible framework for rendering animated displays that use sprites and
|
||||
* animations. Sprites and animations can be added to this panel and they will automatically be
|
||||
@@ -291,7 +293,7 @@ public class MediaPanel extends JComponent
|
||||
public void setOpaque (boolean opaque)
|
||||
{
|
||||
if (!opaque) {
|
||||
Log.warning("Media panels shouldn't be setOpaque(false).");
|
||||
log.warning("Media panels shouldn't be setOpaque(false).");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
super.setOpaque(true);
|
||||
@@ -346,8 +348,7 @@ public class MediaPanel extends JComponent
|
||||
try {
|
||||
paint(gfx, dirty);
|
||||
} catch (Throwable t) {
|
||||
Log.warning(this + " choked in paint(" + dirty + ").");
|
||||
Log.logStackTrace(t);
|
||||
log.warning(this + " choked in paint(" + dirty + ").", t);
|
||||
}
|
||||
|
||||
// render our performance debugging if it's enabled
|
||||
@@ -383,7 +384,7 @@ public class MediaPanel extends JComponent
|
||||
Rectangle clip = dirty[ii];
|
||||
// sanity-check the dirty rectangle
|
||||
if (clip == null) {
|
||||
Log.warning("Found null dirty rect painting media panel?!");
|
||||
log.warning("Found null dirty rect painting media panel?!");
|
||||
Thread.dumpStack();
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -38,6 +38,8 @@ import com.threerings.media.sprite.SpriteManager;
|
||||
import com.threerings.media.animation.Animation;
|
||||
import com.threerings.media.animation.AnimationManager;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Coordinates interaction between a sprite and animation manager and the media host that hosts and
|
||||
* renders them. This class is a little fiddly because {@link MediaPanel} has been around a long
|
||||
@@ -98,7 +100,7 @@ public class MetaMediaManager
|
||||
{
|
||||
// sanity check
|
||||
if ((paused && (_pauseTime != 0)) || (!paused && (_pauseTime == 0))) {
|
||||
Log.warning("Requested to pause when paused or vice-versa [paused=" + paused + "].");
|
||||
log.warning("Requested to pause when paused or vice-versa [paused=" + paused + "].");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -23,11 +23,12 @@ package com.threerings.media;
|
||||
|
||||
import java.awt.EventQueue;
|
||||
import java.awt.Rectangle;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import static com.threerings.resource.Log.log;
|
||||
|
||||
/**
|
||||
* Manages regions (rectangles) that are invalidated in the process of ticking animations and
|
||||
* sprites and generally doing other display related business.
|
||||
@@ -64,13 +65,13 @@ public class RegionManager
|
||||
{
|
||||
// make sure we're on an AWT thread
|
||||
if (!EventQueue.isDispatchThread()) {
|
||||
Log.warning("Oi! Region dirtied on non-AWT thread [rect=" + rect + "].");
|
||||
log.warning("Oi! Region dirtied on non-AWT thread [rect=" + rect + "].");
|
||||
Thread.dumpStack();
|
||||
}
|
||||
|
||||
// sanity check
|
||||
if (rect == null) {
|
||||
Log.warning("Attempt to dirty a null rect!?");
|
||||
log.warning("Attempt to dirty a null rect!?");
|
||||
Thread.dumpStack();
|
||||
return;
|
||||
}
|
||||
@@ -78,7 +79,7 @@ public class RegionManager
|
||||
// more sanity checking
|
||||
long x = rect.x, y = rect.y;
|
||||
if ((Math.abs(x) > Integer.MAX_VALUE/2) || (Math.abs(y) > Integer.MAX_VALUE/2)) {
|
||||
Log.warning("Requested to dirty questionable region " +
|
||||
log.warning("Requested to dirty questionable region " +
|
||||
"[rect=" + StringUtil.toString(rect) + "].");
|
||||
return; // Let's not do it!
|
||||
}
|
||||
@@ -93,7 +94,7 @@ public class RegionManager
|
||||
protected final boolean isValidSize (int width, int height)
|
||||
{
|
||||
if (width < 0 || height < 0) {
|
||||
Log.warning("Attempt to add invalid dirty region?! " +
|
||||
log.warning("Attempt to add invalid dirty region?! " +
|
||||
"[size=" + width + "x" + height + "].");
|
||||
Thread.dumpStack();
|
||||
return false;
|
||||
|
||||
@@ -37,6 +37,8 @@ import com.threerings.media.image.Mirage;
|
||||
import com.threerings.media.util.MathUtil;
|
||||
import com.threerings.media.util.Pathable;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Extends the base media panel with the notion of a virtual coordinate
|
||||
* system. All entities in the virtual media panel have virtual
|
||||
@@ -236,7 +238,7 @@ public class VirtualMediaPanel extends MediaPanel
|
||||
// determine how far we'll be moving on this tick
|
||||
int dx = _nx - _vbounds.x, dy = _ny - _vbounds.y;
|
||||
|
||||
// Log.info("Scrolling into place [n=(" + _nx + ", " + _ny +
|
||||
// log.info("Scrolling into place [n=(" + _nx + ", " + _ny +
|
||||
// "), t=(" + _vbounds.x + ", " + _vbounds.y +
|
||||
// "), d=(" + dx + ", " + dy +
|
||||
// "), width=" + width + ", height=" + height + "].");
|
||||
@@ -334,7 +336,7 @@ public class VirtualMediaPanel extends MediaPanel
|
||||
break;
|
||||
|
||||
default:
|
||||
Log.warning("Eh? Set to invalid pathable mode " +
|
||||
log.warning("Eh? Set to invalid pathable mode " +
|
||||
"[mode=" + _fmode + "].");
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ import java.util.ArrayList;
|
||||
|
||||
import com.samskivert.swing.util.SwingUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A utility class for positioning animations such that they don't overlap,
|
||||
@@ -61,7 +61,7 @@ public class AnimationArranger
|
||||
protected AnimationAdapter _avoidAnimObs = new AnimationAdapter() {
|
||||
public void animationCompleted (Animation anim, long when) {
|
||||
if (!_avoidAnims.remove(anim)) {
|
||||
Log.warning("Couldn't remove avoid animation?! " + anim + ".");
|
||||
log.warning("Couldn't remove avoid animation?! " + anim + ".");
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -28,7 +28,7 @@ import java.util.ArrayList;
|
||||
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* An animation that provides facilities for adding a sequence of
|
||||
@@ -245,7 +245,7 @@ public class AnimationSequencer extends Animation
|
||||
try {
|
||||
_completionAction.run();
|
||||
} catch (Throwable t) {
|
||||
Log.logStackTrace(t);
|
||||
log.warning(t);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -26,9 +26,10 @@ import java.awt.Composite;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Rectangle;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.effects.FadeEffect;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* An animation that displays an image fading from one alpha level to
|
||||
* another in specified increments over time. The animation is finished
|
||||
|
||||
@@ -29,7 +29,7 @@ import java.awt.RenderingHints;
|
||||
import com.samskivert.swing.Label;
|
||||
import com.samskivert.swing.util.SwingUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Does something extraordinary.
|
||||
|
||||
@@ -32,7 +32,7 @@ import com.samskivert.util.RandomUtil;
|
||||
import com.threerings.media.animation.Animation;
|
||||
import com.threerings.media.image.Mirage;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Displays a set of spark images originating from a specified position
|
||||
|
||||
@@ -25,7 +25,7 @@ import java.awt.Graphics;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Provides a volatile mirage that is backed by a buffered image that is
|
||||
@@ -63,8 +63,7 @@ public class BackedVolatileMirage extends VolatileMirage
|
||||
gfx.drawImage(_source, -_bounds.x, -_bounds.y, null);
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Failure refreshing mirage " + this + ".");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Failure refreshing mirage " + this + ".", e);
|
||||
|
||||
} finally {
|
||||
gfx.dispose();
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.awt.Rectangle;
|
||||
import java.awt.Transparency;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A mirage implementation which allows the image to be maintained in
|
||||
@@ -76,8 +76,7 @@ public class CachedVolatileMirage extends VolatileMirage
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Failure refreshing mirage " + this + ".");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Failure refreshing mirage " + this + ".", e);
|
||||
|
||||
} finally {
|
||||
if (gfx != null) {
|
||||
|
||||
@@ -36,10 +36,11 @@ import com.samskivert.util.HashIntMap;
|
||||
import com.samskivert.util.RandomUtil;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.resource.ResourceManager;
|
||||
import com.threerings.util.CompiledConfig;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A repository of image recoloration information. It was called the
|
||||
* recolor repository but the re-s cancelled one another out.
|
||||
@@ -81,7 +82,7 @@ public class ColorPository implements Serializable
|
||||
{
|
||||
// validate the color id
|
||||
if (record.colorId > 255) {
|
||||
Log.warning("Refusing to add color record; colorId > 255 " +
|
||||
log.warning("Refusing to add color record; colorId > 255 " +
|
||||
"[class=" + this + ", record=" + record + "].");
|
||||
} else {
|
||||
record.cclass = this;
|
||||
@@ -145,7 +146,7 @@ public class ColorPository implements Serializable
|
||||
|
||||
// sanity check
|
||||
if (_starters.length < 1) {
|
||||
Log.warning("Requested random starting color from " +
|
||||
log.warning("Requested random starting color from " +
|
||||
"colorless component class " + this + "].");
|
||||
return null;
|
||||
}
|
||||
@@ -362,7 +363,7 @@ public class ColorPository implements Serializable
|
||||
try {
|
||||
colorId = crec.getColorId(colorName);
|
||||
} catch (ParseException pe) {
|
||||
Log.info("Error getting colorization by name. [error=" + pe + "]");
|
||||
log.info("Error getting colorization by name. [error=" + pe + "]");
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -387,7 +388,7 @@ public class ColorPository implements Serializable
|
||||
return crec;
|
||||
}
|
||||
}
|
||||
Log.warning("No such color class [class=" + className + "].");
|
||||
log.warning("No such color class [class=" + className + "].");
|
||||
Thread.dumpStack();
|
||||
return null;
|
||||
}
|
||||
@@ -402,7 +403,7 @@ public class ColorPository implements Serializable
|
||||
// if they request color class zero, we assume they're just
|
||||
// decoding a blank colorprint, otherwise we complain
|
||||
if (classId != 0) {
|
||||
Log.warning("Requested unknown color class " +
|
||||
log.warning("Requested unknown color class " +
|
||||
"[classId=" + classId +
|
||||
", colorId=" + colorId + "].");
|
||||
Thread.dumpStack();
|
||||
@@ -419,7 +420,7 @@ public class ColorPository implements Serializable
|
||||
{
|
||||
ClassRecord record = getClassRecord(className);
|
||||
if (record == null) {
|
||||
Log.warning("Requested unknown color class " +
|
||||
log.warning("Requested unknown color class " +
|
||||
"[className=" + className + ", colorName=" + colorName + "].");
|
||||
Thread.dumpStack();
|
||||
return null;
|
||||
@@ -429,7 +430,7 @@ public class ColorPository implements Serializable
|
||||
try {
|
||||
colorId = record.getColorId(colorName);
|
||||
} catch (ParseException pe) {
|
||||
Log.info("Error getting color record by name. [error=" + pe + "]");
|
||||
log.info("Error getting color record by name. [error=" + pe + "]");
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -444,7 +445,7 @@ public class ColorPository implements Serializable
|
||||
{
|
||||
// validate the class id
|
||||
if (record.classId > 255) {
|
||||
Log.warning("Refusing to add class; classId > 255 " + record + ".");
|
||||
log.warning("Refusing to add class; classId > 255 " + record + ".");
|
||||
} else {
|
||||
_classes.put(record.classId, record);
|
||||
}
|
||||
@@ -459,7 +460,7 @@ public class ColorPository implements Serializable
|
||||
try {
|
||||
return loadColorPository(rmgr.getResource(CONFIG_PATH));
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failure loading color pository [path=" + CONFIG_PATH +
|
||||
log.warning("Failure loading color pository [path=" + CONFIG_PATH +
|
||||
", error=" + ioe + "].");
|
||||
return new ColorPository();
|
||||
}
|
||||
@@ -474,7 +475,7 @@ public class ColorPository implements Serializable
|
||||
try {
|
||||
return (ColorPository)CompiledConfig.loadConfig(source);
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failure loading color pository: " + ioe + ".");
|
||||
log.warning("Failure loading color pository: " + ioe + ".");
|
||||
return new ColorPository();
|
||||
}
|
||||
}
|
||||
@@ -488,7 +489,7 @@ public class ColorPository implements Serializable
|
||||
try {
|
||||
CompiledConfig.saveConfig(path, posit);
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failure saving color pository " +
|
||||
log.warning("Failure saving color pository " +
|
||||
"[path=" + path + ", error=" + ioe + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,9 +22,10 @@ import com.samskivert.util.StringUtil;
|
||||
import com.samskivert.util.Throttle;
|
||||
import com.samskivert.util.Tuple;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.resource.ResourceManager;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Provides a single point of access for image retrieval and caching. This does not include
|
||||
* any tie-in to runtime adjustments to control caching and mirage creation.
|
||||
@@ -95,7 +96,7 @@ public class ImageManager
|
||||
|
||||
// create our image cache
|
||||
int icsize = getCacheSize();
|
||||
Log.debug("Creating image cache [size=" + icsize + "k].");
|
||||
log.debug("Creating image cache [size=" + icsize + "k].");
|
||||
_ccache = new LRUHashMap(icsize * 1024, new LRUHashMap.ItemSizer() {
|
||||
public int computeSize (Object value) {
|
||||
return (int)((CacheRecord)value).getEstimatedMemoryUsage();
|
||||
@@ -126,7 +127,7 @@ public class ImageManager
|
||||
*/
|
||||
public void clearCache ()
|
||||
{
|
||||
Log.info("Clearing image manager cache.");
|
||||
log.info("Clearing image manager cache.");
|
||||
|
||||
_ccache.clear();
|
||||
}
|
||||
@@ -265,7 +266,7 @@ public class ImageManager
|
||||
// load up the raw image
|
||||
BufferedImage image = loadImage(key);
|
||||
if (image == null) {
|
||||
Log.warning("Failed to load image " + key + ".");
|
||||
log.warning("Failed to load image " + key + ".");
|
||||
// create a blank image instead
|
||||
image = new BufferedImage(10, 10, BufferedImage.TYPE_BYTE_INDEXED);
|
||||
}
|
||||
@@ -396,15 +397,14 @@ public class ImageManager
|
||||
|
||||
BufferedImage image = null;
|
||||
try {
|
||||
Log.debug("Loading image " + key + ".");
|
||||
log.debug("Loading image " + key + ".");
|
||||
image = key.daprov.loadImage(key.path);
|
||||
if (image == null) {
|
||||
Log.warning("ImageDataProvider.loadImage(" + key + ") returned null.");
|
||||
log.warning("ImageDataProvider.loadImage(" + key + ") returned null.");
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Unable to load image '" + key + "'.");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Unable to load image '" + key + "'.", e);
|
||||
|
||||
// create a blank image in its stead
|
||||
image = createImage(1, 1, Transparency.OPAQUE);
|
||||
@@ -435,7 +435,7 @@ public class ImageManager
|
||||
}
|
||||
eff = _ccache.getTrackedEffectiveness();
|
||||
}
|
||||
Log.info("ImageManager LRU [mem=" + (size / 1024) + "k, size=" + _ccache.size() +
|
||||
log.info("ImageManager LRU [mem=" + (size / 1024) + "k, size=" + _ccache.size() +
|
||||
", hits=" + eff[0] + ", misses=" + eff[1] + ", totalKeys=" + _keySet.size() + "].");
|
||||
}
|
||||
|
||||
@@ -476,7 +476,7 @@ public class ImageManager
|
||||
return cimage;
|
||||
|
||||
} catch (Exception re) {
|
||||
Log.warning("Failure recoloring image [source" + _key +
|
||||
log.warning("Failure recoloring image [source" + _key +
|
||||
", zations=" + StringUtil.toString(zations) + ", error=" + re + "].");
|
||||
// return the uncolorized version
|
||||
return _source;
|
||||
@@ -535,4 +535,4 @@ public class ImageManager
|
||||
|
||||
/** Default amount of data we'll store in our image cache. */
|
||||
protected static int DEFAULT_CACHE_SIZE = 32768;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ import java.awt.geom.AffineTransform;
|
||||
import java.awt.geom.NoninvertibleTransformException;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Draws a mirage combined with an arbitrary AffineTransform.
|
||||
|
||||
@@ -32,7 +32,7 @@ import javax.sound.sampled.DataLine;
|
||||
import javax.sound.sampled.LineUnavailableException;
|
||||
import javax.sound.sampled.SourceDataLine;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Plays mp3 files. Depends on three external jar files that aren't even
|
||||
@@ -69,7 +69,7 @@ public class Mp3Player extends MusicPlayer
|
||||
inStream = AudioSystem.getAudioInputStream(
|
||||
new BufferedInputStream(stream, BUFFER_SIZE));
|
||||
} catch (Exception e) {
|
||||
Log.warning("MP3 fuckola. [e=" + e + "].");
|
||||
log.warning("MP3 fuckola. [e=" + e + "].");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ public class Mp3Player extends MusicPlayer
|
||||
_line = (SourceDataLine) AudioSystem.getLine(info);
|
||||
_line.open(format);
|
||||
} catch (LineUnavailableException lue) {
|
||||
Log.warning("MP3 line unavailable: " + lue);
|
||||
log.warning("MP3 line unavailable: " + lue);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -97,7 +97,7 @@ public class Mp3Player extends MusicPlayer
|
||||
try {
|
||||
count = inStream.read(data, 0, data.length);
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Error reading MP3: " + ioe);
|
||||
log.warning("Error reading MP3: " + ioe);
|
||||
break;
|
||||
}
|
||||
if (count >= 0) {
|
||||
|
||||
@@ -28,7 +28,7 @@ import com.samskivert.util.Config;
|
||||
import com.samskivert.util.RandomUtil;
|
||||
import com.samskivert.util.RunQueue;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Manages the playing of audio files.
|
||||
@@ -164,7 +164,7 @@ public class MusicManager
|
||||
}
|
||||
}
|
||||
|
||||
Log.debug("Sequence stopped that wasn't in the stack anymore [key=" + mkey + "].");
|
||||
log.debug("Sequence stopped that wasn't in the stack anymore [key=" + mkey + "].");
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -188,7 +188,7 @@ public class MusicManager
|
||||
Config c = _smgr.getConfig(info);
|
||||
String[] names = c.getValue(info.key, (String[])null);
|
||||
if ((names == null) || (names.length == 0)) {
|
||||
Log.warning("No such music [key=" + info + "].");
|
||||
log.warning("No such music [key=" + info + "].");
|
||||
_musicStack.removeFirst();
|
||||
playTopMusic();
|
||||
return;
|
||||
@@ -216,7 +216,7 @@ public class MusicManager
|
||||
_musicPlayer.init(_playerListener);
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Unable to instantiate music player [class=" + playerClass +
|
||||
log.warning("Unable to instantiate music player [class=" + playerClass +
|
||||
", e=" + e + "].");
|
||||
|
||||
// scrap it, try again with the next song
|
||||
@@ -235,7 +235,7 @@ public class MusicManager
|
||||
// TODO: buffer for the music player?
|
||||
_musicPlayer.start(_smgr._rmgr.getResource(bundle, music));
|
||||
} catch (Exception e) {
|
||||
Log.warning("Error playing music, skipping [e=" + e +
|
||||
log.warning("Error playing music, skipping [e=" + e +
|
||||
", bundle=" + bundle + ", music=" + music + "].");
|
||||
_musicStack.removeFirst();
|
||||
playTopMusic();
|
||||
|
||||
@@ -57,9 +57,10 @@ import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.resource.ResourceManager;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.MediaPrefs;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Manages the playing of audio files.
|
||||
*/
|
||||
@@ -363,11 +364,11 @@ public class SoundManager
|
||||
boolean queued = enqueue(skey, true);
|
||||
if (queued) {
|
||||
if (_verbose.getValue()) {
|
||||
Log.info("Sound request [key=" + skey.key + "].");
|
||||
log.info("Sound request [key=" + skey.key + "].");
|
||||
}
|
||||
|
||||
} else /* if (_verbose.getValue()) */ {
|
||||
Log.warning("SoundManager not playing sound because too many sounds in queue " +
|
||||
log.warning("SoundManager not playing sound because too many sounds in queue " +
|
||||
"[key=" + skey + "].");
|
||||
}
|
||||
}
|
||||
@@ -433,7 +434,7 @@ public class SoundManager
|
||||
processKey(key);
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.logStackTrace(e);
|
||||
log.warning(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -516,7 +517,7 @@ public class SoundManager
|
||||
|
||||
} else if (key.isExpired()) {
|
||||
if (_verbose.getValue()) {
|
||||
Log.info("Sound expired [key=" + key.key + "].");
|
||||
log.info("Sound expired [key=" + key.key + "].");
|
||||
}
|
||||
return;
|
||||
|
||||
@@ -563,7 +564,7 @@ public class SoundManager
|
||||
} catch (IOException e) {
|
||||
// this shouldn't ever ever happen because the stream
|
||||
// we're given is from a reliable source
|
||||
Log.warning("Error reading clip data! [e=" + e + "].");
|
||||
log.warning("Error reading clip data! [e=" + e + "].");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -610,19 +611,19 @@ public class SoundManager
|
||||
} catch (InterruptedException ie) { }
|
||||
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Error loading sound file [key=" + key + ", e=" + ioe + "].");
|
||||
log.warning("Error loading sound file [key=" + key + ", e=" + ioe + "].");
|
||||
|
||||
} catch (UnsupportedAudioFileException uafe) {
|
||||
Log.warning("Unsupported sound format [key=" + key + ", e=" + uafe + "].");
|
||||
log.warning("Unsupported sound format [key=" + key + ", e=" + uafe + "].");
|
||||
|
||||
} catch (LineUnavailableException lue) {
|
||||
String err = "Line not available to play sound [key=" + key.key + ", e=" + lue + "].";
|
||||
if (_soundSeemsToWork) {
|
||||
Log.warning(err);
|
||||
log.warning(err);
|
||||
} else {
|
||||
// this error comes every goddamned time we play a sound on someone with a
|
||||
// misconfigured sound card, so let's just keep it to ourselves
|
||||
Log.debug(err);
|
||||
log.debug(err);
|
||||
}
|
||||
|
||||
} finally {
|
||||
@@ -676,7 +677,7 @@ public class SoundManager
|
||||
Config c = getConfig(key);
|
||||
String[] names = c.getValue(key.key, (String[])null);
|
||||
if (names == null) {
|
||||
Log.warning("No such sound [key=" + key + "].");
|
||||
log.warning("No such sound [key=" + key + "].");
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -739,7 +740,7 @@ public class SoundManager
|
||||
try {
|
||||
return new FileInputStream(pick);
|
||||
} catch (Exception e) {
|
||||
Log.warning("Error reading test sound [e=" + e + ", file=" + pick + "].");
|
||||
log.warning("Error reading test sound [e=" + e + ", file=" + pick + "].");
|
||||
}
|
||||
}
|
||||
return null;
|
||||
@@ -761,7 +762,7 @@ public class SoundManager
|
||||
} catch (FileNotFoundException fnfe2) {
|
||||
// only play the default sound if we have verbose sound debugging turned on.
|
||||
if (_verbose.getValue()) {
|
||||
Log.warning("Could not locate sound data [bundle=" + bundle +
|
||||
log.warning("Could not locate sound data [bundle=" + bundle +
|
||||
", path=" + path + "].");
|
||||
if (_defaultClipPath != null) {
|
||||
try {
|
||||
@@ -770,14 +771,14 @@ public class SoundManager
|
||||
try {
|
||||
clipin = _rmgr.getResource(_defaultClipPath);
|
||||
} catch (FileNotFoundException fnfe4) {
|
||||
Log.warning("Additionally, the default " +
|
||||
log.warning("Additionally, the default " +
|
||||
"fallback sound could not be located " +
|
||||
"[bundle=" + _defaultClipBundle +
|
||||
", path=" + _defaultClipPath + "].");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
Log.warning("No fallback default sound specified!");
|
||||
log.warning("No fallback default sound specified!");
|
||||
}
|
||||
}
|
||||
// if we couldn't load the default, rethrow
|
||||
@@ -803,7 +804,7 @@ public class SoundManager
|
||||
props = ConfigUtil.loadInheritedProperties(
|
||||
propPath + ".properties", _rmgr.getClassLoader());
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failed to load sound properties " +
|
||||
log.warning("Failed to load sound properties " +
|
||||
"[path=" + propPath + ", error=" + ioe + "].");
|
||||
}
|
||||
c = new Config(propPath, props);
|
||||
@@ -865,7 +866,7 @@ public class SoundManager
|
||||
FloatControl control = (FloatControl) line.getControl(FloatControl.Type.PAN);
|
||||
control.setValue(pan);
|
||||
} catch (Exception e) {
|
||||
Log.debug("Cannot set pan on line: " + e);
|
||||
log.debug("Cannot set pan on line: " + e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ import com.threerings.media.AbstractMedia;
|
||||
import com.threerings.media.util.Path;
|
||||
import com.threerings.media.util.Pathable;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* The sprite class represents a single moveable object in an animated
|
||||
|
||||
@@ -27,11 +27,12 @@ import java.io.IOException;
|
||||
|
||||
import com.samskivert.util.LRUHashMap;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.image.BufferedMirage;
|
||||
import com.threerings.media.image.Colorization;
|
||||
import com.threerings.media.image.Mirage;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* An image provider that can be used by command line tools to load images and provide them to
|
||||
* tilesets when doing things like preprocessing tileset images.
|
||||
@@ -47,7 +48,7 @@ public abstract class SimpleCachingImageProvider implements ImageProvider
|
||||
image = loadImage(path);
|
||||
_cache.put(path, image);
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failed to load image [path=" + path + ", ioe=" + ioe + "].");
|
||||
log.warning("Failed to load image [path=" + path + ", ioe=" + ioe + "].");
|
||||
}
|
||||
}
|
||||
return image;
|
||||
|
||||
@@ -27,9 +27,10 @@ import java.util.HashMap;
|
||||
|
||||
import com.samskivert.io.PersistenceException;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.image.ImageManager;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* The tile manager provides a simplified interface for retrieving and
|
||||
* caching tiles. Tiles can be loaded in two different ways. An
|
||||
@@ -170,7 +171,7 @@ public class TileManager
|
||||
try {
|
||||
return _setrep.getTileSet(tileSetId);
|
||||
} catch (PersistenceException pe) {
|
||||
Log.warning("Failure loading tileset [id=" + tileSetId +
|
||||
log.warning("Failure loading tileset [id=" + tileSetId +
|
||||
", error=" + pe + "].");
|
||||
throw new NoSuchTileSetException(tileSetId);
|
||||
}
|
||||
@@ -193,7 +194,7 @@ public class TileManager
|
||||
try {
|
||||
return _setrep.getTileSet(name);
|
||||
} catch (PersistenceException pe) {
|
||||
Log.warning("Failure loading tileset [name=" + name +
|
||||
log.warning("Failure loading tileset [name=" + name +
|
||||
", error=" + pe + "].");
|
||||
throw new NoSuchTileSetException(name);
|
||||
}
|
||||
|
||||
@@ -31,7 +31,6 @@ import java.util.Iterator;
|
||||
import com.samskivert.util.StringUtil;
|
||||
import com.samskivert.util.Throttle;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.image.Colorization;
|
||||
import com.threerings.media.image.Mirage;
|
||||
import com.threerings.media.image.ImageUtil;
|
||||
@@ -39,6 +38,8 @@ import com.threerings.media.image.BufferedMirage;
|
||||
import com.threerings.media.util.MultiFrameImage;
|
||||
import com.threerings.media.util.MultiFrameImageImpl;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A tileset stores information on a single logical set of tiles. It provides a clean interface for
|
||||
* the {@link TileManager} or other entities to retrieve individual tiles from the tile set and
|
||||
@@ -126,7 +127,7 @@ public abstract class TileSet
|
||||
return tset;
|
||||
|
||||
} catch (CloneNotSupportedException cnse) {
|
||||
Log.warning("Unable to clone tileset prior to colorization [tset=" + this +
|
||||
log.warning("Unable to clone tileset prior to colorization [tset=" + this +
|
||||
", zations=" + StringUtil.toString(zations) + ", error=" + cnse + "].");
|
||||
return null;
|
||||
}
|
||||
@@ -252,7 +253,7 @@ public abstract class TileSet
|
||||
Mirage mirage = null;
|
||||
if (checkTileIndex(tileIndex)) {
|
||||
if (_improv == null) {
|
||||
Log.warning("Aiya! Tile set missing image provider [path=" + _imagePath + "].");
|
||||
log.warning("Aiya! Tile set missing image provider [path=" + _imagePath + "].");
|
||||
} else {
|
||||
mirage = _improv.getTileImage(_imagePath, bounds, zations);
|
||||
}
|
||||
@@ -289,7 +290,7 @@ public abstract class TileSet
|
||||
if (timg != null) {
|
||||
img = timg.getSubimage(bounds.x, bounds.y, bounds.width, bounds.height);
|
||||
} else {
|
||||
Log.warning("Missing source image " + this);
|
||||
log.warning("Missing source image " + this);
|
||||
}
|
||||
}
|
||||
if (img == null) {
|
||||
@@ -318,7 +319,7 @@ public abstract class TileSet
|
||||
if (tileIndex >= 0 && tileIndex < tcount) {
|
||||
return true;
|
||||
} else {
|
||||
Log.warning("Requested invalid tile [tset=" + this + ", index=" + tileIndex + "].");
|
||||
log.warning("Requested invalid tile [tset=" + this + ", index=" + tileIndex + "].");
|
||||
Thread.dumpStack();
|
||||
return false;
|
||||
}
|
||||
@@ -386,7 +387,7 @@ public abstract class TileSet
|
||||
}
|
||||
}
|
||||
}
|
||||
Log.info("Tile caches [amem=" + (amem / 1024) + "k" +
|
||||
log.info("Tile caches [amem=" + (amem / 1024) + "k" +
|
||||
", tmem=" + (Tile._totalTileMemory / 1024) + "k" +
|
||||
", seen=" + _atiles.size() + ", asize=" + asize + "].");
|
||||
}
|
||||
|
||||
@@ -29,13 +29,14 @@ import com.samskivert.util.HashIntMap;
|
||||
import com.threerings.resource.ResourceBundle;
|
||||
import com.threerings.resource.ResourceManager;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.image.ImageManager;
|
||||
import com.threerings.media.tile.IMImageProvider;
|
||||
import com.threerings.media.tile.NoSuchTileSetException;
|
||||
import com.threerings.media.tile.TileSet;
|
||||
import com.threerings.media.tile.TileSetRepository;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Loads tileset data from a set of resource bundles.
|
||||
*
|
||||
@@ -81,7 +82,7 @@ public class BundledTileSetRepository
|
||||
|
||||
// sanity check
|
||||
if (rbundles == null) {
|
||||
Log.warning("Unable to fetch tileset resource set " +
|
||||
log.warning("Unable to fetch tileset resource set " +
|
||||
"[name=" + name + "]. Perhaps it's not defined " +
|
||||
"in the resource manager config?");
|
||||
return;
|
||||
@@ -127,11 +128,8 @@ public class BundledTileSetRepository
|
||||
addBundle(idmap, namemap, tsb);
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Unable to load tileset bundle '" +
|
||||
BundleUtil.METADATA_PATH + "' from resource " +
|
||||
"bundle [rbundle=" + bundle +
|
||||
", error=" + e + "].");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Unable to load tileset bundle '" + BundleUtil.METADATA_PATH +
|
||||
"' from resource bundle [rbundle=" + bundle + "].", e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -216,7 +214,7 @@ public class BundledTileSetRepository
|
||||
try {
|
||||
wait();
|
||||
} catch (InterruptedException ie) {
|
||||
Log.warning("Interrupted waiting for bundles " + ie);
|
||||
log.warning("Interrupted waiting for bundles " + ie);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,6 @@ import javax.imageio.ImageIO;
|
||||
|
||||
import org.apache.commons.io.IOUtils;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.util.FileUtil;
|
||||
import com.threerings.media.tile.ImageProvider;
|
||||
import com.threerings.media.tile.ObjectTileSet;
|
||||
@@ -44,6 +43,8 @@ import com.threerings.media.tile.TrimmedObjectTileSet;
|
||||
import com.threerings.media.tile.bundle.BundleUtil;
|
||||
import com.threerings.media.tile.bundle.TileSetBundle;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
public class DirectoryTileSetBundler extends TileSetBundler
|
||||
{
|
||||
public DirectoryTileSetBundler (File configFile)
|
||||
@@ -74,7 +75,7 @@ public class DirectoryTileSetBundler extends TileSetBundler
|
||||
|
||||
// sanity checks
|
||||
if (imagePath == null) {
|
||||
Log.warning("Tileset contains no image path " +
|
||||
log.warning("Tileset contains no image path " +
|
||||
"[set=" + set + "]. It ain't gonna work.");
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -42,7 +42,6 @@ import org.xml.sax.SAXException;
|
||||
|
||||
import com.samskivert.io.PersistenceException;
|
||||
import com.samskivert.util.HashIntMap;
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.tile.ImageProvider;
|
||||
import com.threerings.media.tile.ObjectTileSet;
|
||||
import com.threerings.media.tile.SimpleCachingImageProvider;
|
||||
@@ -54,6 +53,8 @@ import com.threerings.media.tile.bundle.TileSetBundle;
|
||||
import com.threerings.media.tile.tools.xml.TileSetRuleSet;
|
||||
import com.threerings.resource.FastImageIO;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* The tileset bundler is used to create tileset bundles from a set of XML
|
||||
* tileset descriptions in a bundle description file. The bundles contain
|
||||
@@ -259,7 +260,7 @@ public class TileSetBundler
|
||||
|
||||
// let's be robust
|
||||
if (name == null) {
|
||||
Log.warning("Tileset was parsed, but received no name " +
|
||||
log.warning("Tileset was parsed, but received no name " +
|
||||
"[set=" + set + "]. Skipping.");
|
||||
continue;
|
||||
}
|
||||
@@ -299,7 +300,7 @@ public class TileSetBundler
|
||||
try {
|
||||
idBroker.commit();
|
||||
} catch (PersistenceException pe) {
|
||||
Log.warning("Failure committing brokered tileset ids " +
|
||||
log.warning("Failure committing brokered tileset ids " +
|
||||
"back to broker's persistent store " +
|
||||
"[error=" + pe + "].");
|
||||
}
|
||||
@@ -373,7 +374,7 @@ public class TileSetBundler
|
||||
|
||||
// sanity checks
|
||||
if (imagePath == null) {
|
||||
Log.warning("Tileset contains no image path " +
|
||||
log.warning("Tileset contains no image path " +
|
||||
"[set=" + set + "]. It ain't gonna work.");
|
||||
continue;
|
||||
}
|
||||
@@ -450,7 +451,7 @@ public class TileSetBundler
|
||||
// remove the incomplete jar file and rethrow the exception
|
||||
jar.close();
|
||||
if (!target.delete()) {
|
||||
Log.warning("Failed to close botched bundle '" + target + "'.");
|
||||
log.warning("Failed to close botched bundle '" + target + "'.");
|
||||
}
|
||||
String errmsg = "Failed to create bundle " + target + ": " + e;
|
||||
throw (IOException) new IOException(errmsg).initCause(e);
|
||||
|
||||
@@ -29,9 +29,10 @@ import org.apache.commons.digester.Digester;
|
||||
import com.samskivert.util.StringUtil;
|
||||
import com.samskivert.xml.CallMethodSpecialRule;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.tile.SwissArmyTileSet;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Parses {@link SwissArmyTileSet} instances from a tileset description. A
|
||||
* swiss army tileset description looks like so:
|
||||
@@ -96,7 +97,7 @@ public class SwissArmyTileSetRuleSet extends TileSetRuleSet
|
||||
if (values.length == 2) {
|
||||
starget.setOffsetPos(new Point(values[0], values[1]));
|
||||
} else {
|
||||
Log.warning("Invalid 'offsetPos' definition '" +
|
||||
log.warning("Invalid 'offsetPos' definition '" +
|
||||
bodyText + "'.");
|
||||
}
|
||||
}
|
||||
@@ -111,7 +112,7 @@ public class SwissArmyTileSetRuleSet extends TileSetRuleSet
|
||||
if (values.length == 2) {
|
||||
starget.setGapSize(new Dimension(values[0], values[1]));
|
||||
} else {
|
||||
Log.warning("Invalid 'gapSize' definition '" +
|
||||
log.warning("Invalid 'gapSize' definition '" +
|
||||
bodyText + "'.");
|
||||
}
|
||||
}
|
||||
@@ -126,21 +127,21 @@ public class SwissArmyTileSetRuleSet extends TileSetRuleSet
|
||||
|
||||
// check for a <widths> element
|
||||
if (set.getWidths() == null) {
|
||||
Log.warning("Tile set definition missing valid <widths> " +
|
||||
log.warning("Tile set definition missing valid <widths> " +
|
||||
"element [set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
// check for a <heights> element
|
||||
if (set.getHeights() == null) {
|
||||
Log.warning("Tile set definition missing valid <heights> " +
|
||||
log.warning("Tile set definition missing valid <heights> " +
|
||||
"element [set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
// check for a <tileCounts> element
|
||||
if (set.getTileCounts() == null) {
|
||||
Log.warning("Tile set definition missing valid <tileCounts> " +
|
||||
log.warning("Tile set definition missing valid <tileCounts> " +
|
||||
"element [set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
@@ -28,9 +28,10 @@ import com.samskivert.util.StringUtil;
|
||||
import com.samskivert.xml.ValidatedSetNextRule.Validator;
|
||||
import com.samskivert.xml.ValidatedSetNextRule;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.tile.TileSet;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* The tileset rule set is used to parse the base attributes of a tileset
|
||||
* instance. Derived classes would extend this and add rules for their own
|
||||
@@ -106,14 +107,14 @@ public abstract class TileSetRuleSet
|
||||
|
||||
// check for the 'name' attribute
|
||||
if (StringUtil.isBlank(set.getName())) {
|
||||
Log.warning("Tile set definition missing 'name' attribute " +
|
||||
log.warning("Tile set definition missing 'name' attribute " +
|
||||
"[set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
// check for an <imagePath> element
|
||||
if (StringUtil.isBlank(set.getImagePath())) {
|
||||
Log.warning("Tile set definition missing <imagePath> element " +
|
||||
log.warning("Tile set definition missing <imagePath> element " +
|
||||
"[set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
@@ -23,9 +23,10 @@ package com.threerings.media.tile.tools.xml;
|
||||
|
||||
import org.apache.commons.digester.Digester;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.tile.UniformTileSet;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Parses {@link UniformTileSet} instances from a tileset description. A
|
||||
* uniform tileset description looks like so:
|
||||
@@ -69,14 +70,14 @@ public class UniformTileSetRuleSet extends TileSetRuleSet
|
||||
|
||||
// check for a <width> element
|
||||
if (set.getWidth() == 0) {
|
||||
Log.warning("Tile set definition missing valid <width> " +
|
||||
log.warning("Tile set definition missing valid <width> " +
|
||||
"element [set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
// check for a <height> element
|
||||
if (set.getHeight() == 0) {
|
||||
Log.warning("Tile set definition missing valid <height> " +
|
||||
log.warning("Tile set definition missing valid <height> " +
|
||||
"element [set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
@@ -35,9 +35,10 @@ import org.xml.sax.SAXException;
|
||||
import com.samskivert.util.ConfigUtil;
|
||||
import com.samskivert.xml.ValidatedSetNextRule;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.tile.TileSet;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Parse an XML tileset description file and construct tileset objects for
|
||||
* each valid description. Does not currently perform validation on the
|
||||
@@ -147,16 +148,14 @@ public class XMLTileSetParser
|
||||
try {
|
||||
_digester.parse(source);
|
||||
} catch (SAXException saxe) {
|
||||
Log.warning("Exception parsing tile set descriptions " +
|
||||
"[error=" + saxe + "].");
|
||||
Log.logStackTrace(saxe);
|
||||
log.warning("Exception parsing tile set descriptions.", saxe);
|
||||
}
|
||||
|
||||
// stick the tilesets from the list into the hashtable
|
||||
for (int i = 0; i < setlist.size(); i++) {
|
||||
TileSet set = (TileSet)setlist.get(i);
|
||||
if (set.getName() == null) {
|
||||
Log.warning("Tileset did not receive name during " +
|
||||
log.warning("Tileset did not receive name during " +
|
||||
"parsing process [set=" + set + "].");
|
||||
} else {
|
||||
tilesets.put(set.getName(), set);
|
||||
|
||||
@@ -24,7 +24,7 @@ package com.threerings.media.util;
|
||||
import java.awt.Graphics;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Used to tile a background image into regions of various sizes. The
|
||||
@@ -41,7 +41,7 @@ public class BackgroundTiler
|
||||
{
|
||||
// make sure we were given the goods
|
||||
if (src == null) {
|
||||
Log.info("Backgrounder given null source image. Coping.");
|
||||
log.info("Backgrounder given null source image. Coping.");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ public class BackgroundTiler
|
||||
|
||||
// make sure the image suits our minimum useful dimensions
|
||||
if (_w3 <= 0 || _cw3 <= 0 || _h3 <= 0 || _ch3 <= 0) {
|
||||
Log.warning("Backgrounder given source image of insufficient " +
|
||||
log.warning("Backgrounder given source image of insufficient " +
|
||||
"size for tiling " +
|
||||
"[width=" + width + ", height=" + height + "].");
|
||||
return;
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.awt.Graphics2D;
|
||||
|
||||
import com.samskivert.util.RandomUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Bobble a Pathable.
|
||||
|
||||
@@ -34,9 +34,10 @@ import com.samskivert.util.StringUtil;
|
||||
import com.threerings.util.DirectionCodes;
|
||||
import com.threerings.util.DirectionUtil;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.util.MathUtil;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* The line segment path is used to cause a pathable to follow a path that
|
||||
* is made up of a sequence of line segments. There must be at least two
|
||||
@@ -160,7 +161,7 @@ public class LineSegmentPath
|
||||
// information to compute our velocity
|
||||
int ncount = _nodes.size();
|
||||
if (ncount < 2) {
|
||||
Log.warning("Requested to set duration of bogus path " +
|
||||
log.warning("Requested to set duration of bogus path " +
|
||||
"[path=" + this + ", duration=" + millis + "].");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.awt.Graphics2D;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Used to create a path that is a sequence of several other paths.
|
||||
@@ -81,7 +81,7 @@ public class PathSequence
|
||||
public boolean tick (Pathable pable, long tickStamp)
|
||||
{
|
||||
if (pable != _pable) {
|
||||
Log.warning("PathSequence ticked with different path than " +
|
||||
log.warning("PathSequence ticked with different path than " +
|
||||
"it was inited with.");
|
||||
}
|
||||
return _curPath.tick(_pableRep, tickStamp);
|
||||
|
||||
@@ -23,10 +23,11 @@ package com.threerings.media.util;
|
||||
|
||||
import java.util.HashMap;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.timer.MediaTimer;
|
||||
import com.threerings.media.timer.NanoTimer;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* Provides a simple mechanism for monitoring the number of times an action takes place within a
|
||||
* certain time period.
|
||||
@@ -78,7 +79,7 @@ public class PerformanceMonitor
|
||||
// get the observer's action hashtable
|
||||
HashMap actions = (HashMap)_observers.get(obs);
|
||||
if (actions == null) {
|
||||
Log.warning("Attempt to unregister by unknown observer " +
|
||||
log.warning("Attempt to unregister by unknown observer " +
|
||||
"[observer=" + obs + ", name=" + name + "].");
|
||||
return;
|
||||
}
|
||||
@@ -86,7 +87,7 @@ public class PerformanceMonitor
|
||||
// attempt to remove the specified action
|
||||
PerformanceAction action = (PerformanceAction)actions.remove(name);
|
||||
if (action == null) {
|
||||
Log.warning("Attempt to unregister unknown action " +
|
||||
log.warning("Attempt to unregister unknown action " +
|
||||
"[observer=" + obs + ", name=" + name + "].");
|
||||
return;
|
||||
}
|
||||
@@ -109,7 +110,7 @@ public class PerformanceMonitor
|
||||
// get the observer's action hashtable
|
||||
HashMap actions = (HashMap)_observers.get(obs);
|
||||
if (actions == null) {
|
||||
Log.warning("Attempt to tick by unknown observer " +
|
||||
log.warning("Attempt to tick by unknown observer " +
|
||||
"[observer=" + obs + ", name=" + name + "].");
|
||||
return;
|
||||
}
|
||||
@@ -117,7 +118,7 @@ public class PerformanceMonitor
|
||||
// get the specified action
|
||||
PerformanceAction action = (PerformanceAction)actions.get(name);
|
||||
if (action == null) {
|
||||
Log.warning("Attempt to tick unknown value " +
|
||||
log.warning("Attempt to tick unknown value " +
|
||||
"[observer=" + obs + ", name=" + name + "].");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
|
||||
package com.threerings.media.util;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* A base class for path implementations that endeavor to move their
|
||||
@@ -37,7 +37,7 @@ public abstract class TimedPath implements Path
|
||||
{
|
||||
// sanity check some things
|
||||
if (duration <= 0) {
|
||||
Log.warning("Requested path with illegal duration (<=0) " +
|
||||
log.warning("Requested path with illegal duration (<=0) " +
|
||||
"[duration=" + duration + "]");
|
||||
Thread.dumpStack();
|
||||
duration = 1; // assume something short but non-zero
|
||||
|
||||
@@ -21,36 +21,12 @@
|
||||
|
||||
package com.threerings.miso;
|
||||
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by
|
||||
* the miso package.
|
||||
* Contains a reference to the log object used by the Miso package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
public static com.samskivert.util.Log log =
|
||||
new com.samskivert.util.Log("miso");
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.debug(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.logStackTrace(com.samskivert.util.Log.WARNING, t);
|
||||
}
|
||||
public static Logger log = Logger.getLogger("com.threerings.miso");
|
||||
}
|
||||
|
||||
@@ -27,10 +27,11 @@ import java.util.Comparator;
|
||||
|
||||
import com.samskivert.util.SortableArrayList;
|
||||
|
||||
import com.threerings.media.Log;
|
||||
import com.threerings.media.sprite.Sprite;
|
||||
import com.threerings.media.tile.ObjectTile;
|
||||
|
||||
import static com.threerings.media.Log.log;
|
||||
|
||||
/**
|
||||
* The dirty item list keeps track of dirty sprites and object tiles
|
||||
* in a scene.
|
||||
@@ -90,7 +91,7 @@ public class DirtyItemList
|
||||
int size = size();
|
||||
|
||||
if (DEBUG_SORT) {
|
||||
Log.info("Sorting dirty item list [size=" + size + "].");
|
||||
log.info("Sorting dirty item list [size=" + size + "].");
|
||||
}
|
||||
|
||||
// if we've only got one item, we need to do no sorting
|
||||
@@ -99,7 +100,7 @@ public class DirtyItemList
|
||||
_xitems.addAll(_items);
|
||||
_xitems.sort(ORIGIN_X_COMP);
|
||||
if (DEBUG_SORT) {
|
||||
Log.info("Sorted by x-origin " +
|
||||
log.info("Sorted by x-origin " +
|
||||
"[items=" + toString(_xitems) + "].");
|
||||
}
|
||||
|
||||
@@ -107,7 +108,7 @@ public class DirtyItemList
|
||||
_yitems.addAll(_items);
|
||||
_yitems.sort(ORIGIN_Y_COMP);
|
||||
if (DEBUG_SORT) {
|
||||
Log.info("Sorted by y-origin " +
|
||||
log.info("Sorted by y-origin " +
|
||||
"[items=" + toString(_yitems) + "].");
|
||||
}
|
||||
|
||||
@@ -142,12 +143,12 @@ public class DirtyItemList
|
||||
}
|
||||
|
||||
if (DEBUG_SORT) {
|
||||
Log.info("Sorted for render [items=" + toString(_items) + "].");
|
||||
log.info("Sorted for render [items=" + toString(_items) + "].");
|
||||
for (int ii = 0, ll = _items.size()-1; ii < ll; ii++) {
|
||||
DirtyItem a = (DirtyItem)_items.get(ii);
|
||||
DirtyItem b = (DirtyItem)_items.get(ii+1);
|
||||
if (_rcomp.compare(a, b) > 0) {
|
||||
Log.warning("Invalid ordering [a=" + a + ", b=" + b + "].");
|
||||
log.warning("Invalid ordering [a=" + a + ", b=" + b + "].");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -444,7 +445,7 @@ public class DirtyItemList
|
||||
int result = soa.getPriority() - sob.getPriority();
|
||||
if (DEBUG_COMPARE) {
|
||||
String items = DirtyItemList.toString(da, db);
|
||||
Log.info("compare: overlapping [result=" + result +
|
||||
log.info("compare: overlapping [result=" + result +
|
||||
", items=" + items + "].");
|
||||
}
|
||||
return result;
|
||||
@@ -456,7 +457,7 @@ public class DirtyItemList
|
||||
if (result != 0) {
|
||||
if (DEBUG_COMPARE) {
|
||||
String items = DirtyItemList.toString(da, db);
|
||||
Log.info("compare: Y-partitioned " +
|
||||
log.info("compare: Y-partitioned " +
|
||||
"[result=" + result + ", items=" + items + "].");
|
||||
}
|
||||
return result;
|
||||
@@ -467,7 +468,7 @@ public class DirtyItemList
|
||||
if (result != 0) {
|
||||
if (DEBUG_COMPARE) {
|
||||
String items = DirtyItemList.toString(da, db);
|
||||
Log.info("compare: X-partitioned " +
|
||||
log.info("compare: X-partitioned " +
|
||||
"[result=" + result + ", items=" + items + "].");
|
||||
}
|
||||
return result;
|
||||
@@ -477,7 +478,7 @@ public class DirtyItemList
|
||||
result = compareNonPartitioned(da, db);
|
||||
if (DEBUG_COMPARE) {
|
||||
String items = DirtyItemList.toString(da, db);
|
||||
Log.info("compare: non-partitioned " +
|
||||
log.info("compare: non-partitioned " +
|
||||
"[result=" + result + ", items=" + items + "].");
|
||||
}
|
||||
|
||||
|
||||
@@ -69,7 +69,6 @@ import com.threerings.media.tile.TileSet;
|
||||
import com.threerings.media.util.AStarPathUtil;
|
||||
import com.threerings.media.util.MathUtil;
|
||||
import com.threerings.media.util.Path;
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.MisoPrefs;
|
||||
import com.threerings.miso.client.DirtyItemList.DirtyItem;
|
||||
import com.threerings.miso.data.MisoSceneModel;
|
||||
@@ -79,6 +78,8 @@ import com.threerings.miso.util.MisoContext;
|
||||
import com.threerings.miso.util.MisoSceneMetrics;
|
||||
import com.threerings.miso.util.MisoUtil;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Renders a Miso scene for all to see.
|
||||
*/
|
||||
@@ -304,7 +305,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
// an eye out for bogosity
|
||||
if (duration > 500L) {
|
||||
int considered = AStarPathUtil.getConsidered();
|
||||
Log.warning("Considered " + considered + " nodes for path from " +
|
||||
log.warning("Considered " + considered + " nodes for path from " +
|
||||
StringUtil.toString(src) + " to " +
|
||||
StringUtil.toString(dest) +
|
||||
" [duration=" + duration + "].");
|
||||
@@ -362,7 +363,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
for (SceneBlock block : _blocks.values()) {
|
||||
block.computeMemoryUsage(base, fringe, object, usage);
|
||||
}
|
||||
Log.info("Scene tile memory usage " +
|
||||
log.info("Scene tile memory usage " +
|
||||
"[scene=" + StringUtil.shortClassName(this) +
|
||||
", base=" + base.size() + "->" + (usage[0] / 1024) + "k" +
|
||||
", fringe=" + fringe.size() + "->" + (usage[1] / 1024) + "k" +
|
||||
@@ -739,7 +740,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
_ulpos.setLocation(_tcoords);
|
||||
if (rethink() > 0) {
|
||||
_delayRepaint = mightDelayPaint;
|
||||
Log.info("Got new pending blocks " +
|
||||
log.info("Got new pending blocks " +
|
||||
"[need=" + _visiBlocks.size() +
|
||||
", of=" + _pendingBlocks +
|
||||
", view=" + StringUtil.toString(_vbounds) +
|
||||
@@ -813,7 +814,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
key.x = block.getBounds().x;
|
||||
key.y = block.getBounds().y;
|
||||
if (!_rethinkOp.blocks.contains(key)) {
|
||||
Log.debug("Flushing block " + block + ".");
|
||||
log.debug("Flushing block " + block + ".");
|
||||
if (_dpanel != null) {
|
||||
_dpanel.blockCleared(block);
|
||||
}
|
||||
@@ -848,7 +849,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
// recompute our visible object set
|
||||
recomputeVisible();
|
||||
|
||||
Log.debug("Rethunk [pending=" + _pendingBlocks + ", visible=" + _visiBlocks.size() + "].");
|
||||
log.debug("Rethunk [pending=" + _pendingBlocks + ", visible=" + _visiBlocks.size() + "].");
|
||||
return _visiBlocks.size();
|
||||
}
|
||||
|
||||
@@ -950,7 +951,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
// resolution, recompute our visible object set and show ourselves
|
||||
if (_visiBlocks.remove(block) && _visiBlocks.size() == 0) {
|
||||
recomputeVisible();
|
||||
Log.info("Restoring repaint... [left=" + _pendingBlocks +
|
||||
log.info("Restoring repaint... [left=" + _pendingBlocks +
|
||||
", view=" + StringUtil.toString(_vbounds) + "].");
|
||||
_delayRepaint = false;
|
||||
_remgr.invalidateRegion(_vbounds);
|
||||
@@ -964,7 +965,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
*/
|
||||
protected void warnVisible (SceneBlock block, Rectangle sbounds)
|
||||
{
|
||||
Log.warning("Block visible during resolution " + block +
|
||||
log.warning("Block visible during resolution " + block +
|
||||
" sbounds:" + StringUtil.toString(sbounds) +
|
||||
" vbounds:" + StringUtil.toString(_vbounds) + ".");
|
||||
}
|
||||
@@ -1556,7 +1557,7 @@ public class MisoScenePanel extends VirtualMediaPanel
|
||||
}
|
||||
|
||||
} catch (ArrayIndexOutOfBoundsException e) {
|
||||
Log.warning("Whoops, booched it [tx=" + tx +
|
||||
log.warning("Whoops, booched it [tx=" + tx +
|
||||
", ty=" + ty + ", tb.x=" + tbounds.x + "].");
|
||||
e.printStackTrace(System.err);
|
||||
}
|
||||
|
||||
@@ -28,9 +28,10 @@ import javax.swing.Icon;
|
||||
import com.samskivert.swing.RadialMenu;
|
||||
import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.client.SceneObject;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Objects in scenes can be configured to generate action events. Those
|
||||
* events are grouped into types and an object action handler can be
|
||||
@@ -88,7 +89,7 @@ public class ObjectActionHandler
|
||||
*/
|
||||
public void handleAction (SceneObject scobj, ActionEvent event)
|
||||
{
|
||||
Log.warning("Unknown object action [scobj=" + scobj +
|
||||
log.warning("Unknown object action [scobj=" + scobj +
|
||||
", action=" + event + "].");
|
||||
}
|
||||
|
||||
@@ -138,7 +139,7 @@ public class ObjectActionHandler
|
||||
{
|
||||
// make sure we know about potential funny business
|
||||
if (_oahandlers.containsKey(prefix)) {
|
||||
Log.warning("Warning! Overwriting previous object action " +
|
||||
log.warning("Warning! Overwriting previous object action " +
|
||||
"handler registration, all hell could shortly " +
|
||||
"break loose [prefix=" + prefix +
|
||||
", handler=" + handler + "].");
|
||||
|
||||
@@ -40,13 +40,14 @@ import com.threerings.media.tile.TileSet;
|
||||
import com.threerings.media.tile.TileUtil;
|
||||
import com.threerings.media.util.MathUtil;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.data.MisoSceneModel;
|
||||
import com.threerings.miso.data.ObjectInfo;
|
||||
import com.threerings.miso.tile.BaseTile;
|
||||
import com.threerings.miso.util.MisoUtil;
|
||||
import com.threerings.miso.util.ObjectSet;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Contains the base and object tile information on a particular
|
||||
* rectangular region of a scene.
|
||||
@@ -133,7 +134,7 @@ public class SceneBlock
|
||||
long stamp = System.currentTimeMillis();
|
||||
long elapsed = stamp - now;
|
||||
if (elapsed > 500L) {
|
||||
Log.warning("Base and fringe resolution took long time " +
|
||||
log.warning("Base and fringe resolution took long time " +
|
||||
"[block=" + this + ", baseCount=" + baseCount +
|
||||
", fringeCount=" + fringeCount +
|
||||
", elapsed=" + elapsed + "].");
|
||||
@@ -159,7 +160,7 @@ public class SceneBlock
|
||||
elapsed = stamp - now;
|
||||
now = stamp;
|
||||
if (elapsed > 250L) {
|
||||
Log.warning("Scene object took look time to resolve " +
|
||||
log.warning("Scene object took look time to resolve " +
|
||||
"[block=" + this + ", scobj=" + scobj +
|
||||
", elapsed=" + elapsed + "].");
|
||||
}
|
||||
@@ -173,7 +174,7 @@ public class SceneBlock
|
||||
_defset = _panel.getTileManager().getTileSet(bsetid);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Log.warning("Unable to fetch default base tileset [tsid=" + bsetid +
|
||||
log.warning("Unable to fetch default base tileset [tsid=" + bsetid +
|
||||
", error=" + e + "].");
|
||||
}
|
||||
|
||||
@@ -304,7 +305,7 @@ public class SceneBlock
|
||||
}
|
||||
|
||||
if (errmsg != null) {
|
||||
Log.warning(errmsg + " [fqtid=" + fqTileId +
|
||||
log.warning(errmsg + " [fqtid=" + fqTileId +
|
||||
", x=" + tx + ", y=" + ty + "].");
|
||||
}
|
||||
}
|
||||
@@ -421,7 +422,7 @@ public class SceneBlock
|
||||
bases.put(base.key, base);
|
||||
usage[0] += base.getEstimatedMemoryUsage();
|
||||
} else if (base != _base[tidx]) {
|
||||
Log.warning("Multiple instances of same base tile " +
|
||||
log.warning("Multiple instances of same base tile " +
|
||||
"[base=" + base +
|
||||
", x=" + xx + ", y=" + yy + "].");
|
||||
usage[0] += base.getEstimatedMemoryUsage();
|
||||
@@ -446,7 +447,7 @@ public class SceneBlock
|
||||
objects.put(scobj.tile.key, scobj.tile);
|
||||
usage[2] += scobj.tile.getEstimatedMemoryUsage();
|
||||
} else if (tile != scobj.tile) {
|
||||
Log.warning("Multiple instances of same object tile: " +
|
||||
log.warning("Multiple instances of same object tile: " +
|
||||
scobj.info + ".");
|
||||
usage[2] += scobj.tile.getEstimatedMemoryUsage();
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ import com.samskivert.util.Histogram;
|
||||
import com.samskivert.util.LoopingThread;
|
||||
import com.samskivert.util.Queue;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* A separate thread for resolving miso scene blocks.
|
||||
@@ -39,7 +39,7 @@ public class SceneBlockResolver extends LoopingThread
|
||||
*/
|
||||
public void resolveBlock (SceneBlock block, boolean hipri)
|
||||
{
|
||||
Log.debug("Queueing block for resolution " + block +
|
||||
log.debug("Queueing block for resolution " + block +
|
||||
" (" + hipri + ").");
|
||||
if (hipri) {
|
||||
_queue.prepend(block);
|
||||
@@ -84,23 +84,23 @@ public class SceneBlockResolver extends LoopingThread
|
||||
try {
|
||||
wait();
|
||||
} catch (InterruptedException ie) {
|
||||
Log.info("Resolver interrupted.");
|
||||
log.info("Resolver interrupted.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
long start = System.currentTimeMillis();
|
||||
Log.debug("Resolving block " + block + ".");
|
||||
log.debug("Resolving block " + block + ".");
|
||||
if (block.resolve()) {
|
||||
Log.debug("Resolved block " + block + ".");
|
||||
log.debug("Resolved block " + block + ".");
|
||||
}
|
||||
long elapsed = System.currentTimeMillis() - start;
|
||||
_histo.addValue((int)elapsed);
|
||||
|
||||
// warn if a block takes a long time to resolve
|
||||
if (elapsed > LONG_RESOLVE_TIME) {
|
||||
Log.warning("Block took long time to resolve [block=" + block +
|
||||
log.warning("Block took long time to resolve [block=" + block +
|
||||
", elapsed=" + elapsed + "ms].");
|
||||
}
|
||||
|
||||
@@ -119,8 +119,7 @@ public class SceneBlockResolver extends LoopingThread
|
||||
});
|
||||
|
||||
} catch (Exception e) {
|
||||
Log.warning("Block failed during resolution " + block + ".");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Block failed during resolution " + block + ".", e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,12 +36,13 @@ import com.threerings.media.tile.NoSuchTileSetException;
|
||||
import com.threerings.media.tile.ObjectTile;
|
||||
import com.threerings.media.tile.TileUtil;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.MisoPrefs;
|
||||
import com.threerings.miso.data.ObjectInfo;
|
||||
import com.threerings.miso.util.MisoSceneMetrics;
|
||||
import com.threerings.miso.util.MisoUtil;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Contains resolved information on an object in a scene.
|
||||
*/
|
||||
@@ -256,7 +257,7 @@ public class SceneObject
|
||||
computeInfo(panel.getSceneMetrics());
|
||||
|
||||
} catch (NoSuchTileSetException te) {
|
||||
Log.warning("Scene contains non-existent object tileset " +
|
||||
log.warning("Scene contains non-existent object tileset " +
|
||||
"[info=" + info + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,9 +34,10 @@ import com.threerings.io.SimpleStreamableObject;
|
||||
import com.threerings.media.util.MathUtil;
|
||||
import com.threerings.util.StreamableHashIntMap;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.util.ObjectSet;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Contains miso scene data that is broken up into NxN tile sections.
|
||||
*/
|
||||
@@ -103,7 +104,7 @@ public class SparseMisoSceneModel extends MisoSceneModel
|
||||
|
||||
public int getBaseTileId (int col, int row) {
|
||||
if (col < x || col >= (x+width) || row < y || row >= (y+width)) {
|
||||
Log.warning("Requested bogus tile +" + col + "+" + row +
|
||||
log.warning("Requested bogus tile +" + col + "+" + row +
|
||||
" from " + this + ".");
|
||||
return -1;
|
||||
} else {
|
||||
@@ -120,12 +121,12 @@ public class SparseMisoSceneModel extends MisoSceneModel
|
||||
// type at these coordinates
|
||||
int dupidx;
|
||||
if ((dupidx = ListUtil.indexOf(objectInfo, info)) != -1) {
|
||||
Log.warning("Refusing to add duplicate object [ninfo=" + info +
|
||||
log.warning("Refusing to add duplicate object [ninfo=" + info +
|
||||
", oinfo=" + objectInfo[dupidx] + "].");
|
||||
return false;
|
||||
}
|
||||
if ((dupidx = indexOfUn(info)) != -1) {
|
||||
Log.warning("Refusing to add duplicate object " +
|
||||
log.warning("Refusing to add duplicate object " +
|
||||
"[info=" + info + "].");
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -40,9 +40,10 @@ import com.threerings.media.tile.TileManager;
|
||||
import com.threerings.media.tile.TileSet;
|
||||
import com.threerings.media.tile.TileUtil;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.data.MisoSceneModel;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Automatically fringes a scene according to the rules in the supplied fringe configuration.
|
||||
*/
|
||||
@@ -116,7 +117,7 @@ public class AutoFringer
|
||||
BaseTile bt = (BaseTile) _tmgr.getTile(btid);
|
||||
passable = bt.isPassable();
|
||||
} catch (NoSuchTileSetException nstse) {
|
||||
Log.warning("Autofringer couldn't find a base " +
|
||||
log.warning("Autofringer couldn't find a base " +
|
||||
"set while attempting to figure passability " +
|
||||
"[error=" + nstse + "].");
|
||||
}
|
||||
@@ -160,7 +161,7 @@ public class AutoFringer
|
||||
try {
|
||||
ftimg = getTileImage(ftimg, fringers[ii].baseset, indexes[jj], masks, hashValue);
|
||||
} catch (NoSuchTileSetException nstse) {
|
||||
Log.warning("Autofringer couldn't find a needed tileset [error=" + nstse + "].");
|
||||
log.warning("Autofringer couldn't find a needed tileset [error=" + nstse + "].");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ import com.threerings.util.CompiledConfig;
|
||||
import com.threerings.media.image.ImageManager;
|
||||
import com.threerings.media.tile.TileManager;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Extends the basic tile manager and provides support for automatically
|
||||
@@ -62,7 +62,7 @@ public class MisoTileManager extends TileManager
|
||||
_fringer = new AutoFringer(config, imgr, this);
|
||||
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Unable to load fringe configuration " +
|
||||
log.warning("Unable to load fringe configuration " +
|
||||
"[path=" + FRINGE_CONFIG_PATH +
|
||||
", error=" + ioe + "].");
|
||||
|
||||
|
||||
@@ -28,9 +28,10 @@ import com.samskivert.xml.CallMethodSpecialRule;
|
||||
|
||||
import com.threerings.media.tile.tools.xml.SwissArmyTileSetRuleSet;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.tile.BaseTileSet;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Parses {@link BaseTileSet} instances from a tileset description. Base
|
||||
* tilesets extend swiss army tilesets with the addition of a passability
|
||||
@@ -66,7 +67,7 @@ public class BaseTileSetRuleSet extends SwissArmyTileSetRuleSet
|
||||
|
||||
// check for a <passable> element
|
||||
if (set.getPassability() == null) {
|
||||
Log.warning("Tile set definition missing valid <passable> " +
|
||||
log.warning("Tile set definition missing valid <passable> " +
|
||||
"element [set=" + set + "].");
|
||||
valid = false;
|
||||
}
|
||||
|
||||
@@ -34,11 +34,12 @@ import com.threerings.tools.xml.CompiledConfigParser;
|
||||
|
||||
import com.threerings.media.tile.TileSetIDBroker;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.tile.FringeConfiguration.FringeRecord;
|
||||
import com.threerings.miso.tile.FringeConfiguration.FringeTileSetRecord;
|
||||
import com.threerings.miso.tile.FringeConfiguration;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Parses fringe config definitions.
|
||||
*/
|
||||
@@ -73,7 +74,7 @@ public class FringeConfigurationParser extends CompiledConfigParser
|
||||
if (((FringeRecord) target).isValid()) {
|
||||
return true;
|
||||
} else {
|
||||
Log.warning("A FringeRecord was not added because it was " +
|
||||
log.warning("A FringeRecord was not added because it was " +
|
||||
"improperly specified [rec=" + target + "].");
|
||||
return false;
|
||||
}
|
||||
@@ -99,14 +100,14 @@ public class FringeConfigurationParser extends CompiledConfigParser
|
||||
if (_idBroker.tileSetMapped(value)) {
|
||||
frec.base_tsid = _idBroker.getTileSetID(value);
|
||||
} else {
|
||||
Log.warning("Skipping unknown base " +
|
||||
log.warning("Skipping unknown base " +
|
||||
"tileset [name=" + value + "].");
|
||||
}
|
||||
|
||||
} else if ("priority".equals(name)) {
|
||||
frec.priority = Integer.parseInt(value);
|
||||
} else {
|
||||
Log.warning("Skipping unknown attribute " +
|
||||
log.warning("Skipping unknown attribute " +
|
||||
"[name=" + name + "].");
|
||||
}
|
||||
}
|
||||
@@ -123,7 +124,7 @@ public class FringeConfigurationParser extends CompiledConfigParser
|
||||
if (((FringeTileSetRecord) target).isValid()) {
|
||||
return true;
|
||||
} else {
|
||||
Log.warning("A FringeTileSetRecord was not added because " +
|
||||
log.warning("A FringeTileSetRecord was not added because " +
|
||||
"it was improperly specified " +
|
||||
"[rec=" + target + "].");
|
||||
return false;
|
||||
@@ -148,14 +149,14 @@ public class FringeConfigurationParser extends CompiledConfigParser
|
||||
if (_idBroker.tileSetMapped(value)) {
|
||||
f.fringe_tsid = _idBroker.getTileSetID(value);
|
||||
} else {
|
||||
Log.warning("Skipping unknown fringe " +
|
||||
log.warning("Skipping unknown fringe " +
|
||||
"tileset [name=" + value + "].");
|
||||
}
|
||||
|
||||
} else if ("mask".equals(name)) {
|
||||
f.mask = Boolean.valueOf(value).booleanValue();
|
||||
} else {
|
||||
Log.warning("Skipping unknown attribute " +
|
||||
log.warning("Skipping unknown attribute " +
|
||||
"[name=" + name + "].");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,9 +27,10 @@ import java.util.Comparator;
|
||||
import com.samskivert.util.ArrayUtil;
|
||||
import com.samskivert.util.ListUtil;
|
||||
|
||||
import com.threerings.miso.Log;
|
||||
import com.threerings.miso.data.ObjectInfo;
|
||||
|
||||
import static com.threerings.miso.Log.log;
|
||||
|
||||
/**
|
||||
* Used to store an (arbitrarily) ordered, low-impact iteratable (doesn't
|
||||
* require object creation), set of {@link ObjectInfo} instances.
|
||||
@@ -48,7 +49,7 @@ public class ObjectSet
|
||||
int ipos = indexOf(info);
|
||||
if (ipos >= 0) {
|
||||
// log a warning because the caller shouldn't be doing this
|
||||
Log.warning("Requested to add an object to a set that already " +
|
||||
log.warning("Requested to add an object to a set that already " +
|
||||
"contains such an object [ninfo=" + info +
|
||||
", oinfo=" + _objs[ipos] + "].");
|
||||
Thread.dumpStack();
|
||||
|
||||
@@ -29,6 +29,8 @@ import org.lwjgl.openal.AL10;
|
||||
|
||||
import com.samskivert.util.ObserverList;
|
||||
|
||||
import static com.threerings.openal.Log.log;
|
||||
|
||||
/**
|
||||
* Represents a sound that has been loaded into the OpenAL system.
|
||||
*/
|
||||
@@ -154,7 +156,7 @@ public class ClipBuffer
|
||||
AL10.alGenBuffers(_bufferId);
|
||||
int errno = AL10.alGetError();
|
||||
if (errno != AL10.AL_NO_ERROR) {
|
||||
Log.warning("Failed to create buffer [key=" + getKey() +
|
||||
log.warning("Failed to create buffer [key=" + getKey() +
|
||||
", errno=" + errno + "].");
|
||||
_bufferId = null;
|
||||
// queue up a failure notification so that we properly return
|
||||
@@ -211,7 +213,7 @@ public class ClipBuffer
|
||||
_bufferId.get(0), clip.format, clip.data, clip.frequency);
|
||||
int errno = AL10.alGetError();
|
||||
if (errno != AL10.AL_NO_ERROR) {
|
||||
Log.warning("Failed to bind clip [key=" + getKey() +
|
||||
log.warning("Failed to bind clip [key=" + getKey() +
|
||||
", errno=" + errno + "].");
|
||||
failed();
|
||||
return false;
|
||||
|
||||
@@ -21,36 +21,12 @@
|
||||
|
||||
package com.threerings.openal;
|
||||
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by
|
||||
* this package.
|
||||
* Contains a reference to the log object used by this package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
public static com.samskivert.util.Log log =
|
||||
new com.samskivert.util.Log("narya.openal");
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.debug(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.logStackTrace(com.samskivert.util.Log.WARNING, t);
|
||||
}
|
||||
public static Logger log = Logger.getLogger("com.threerings.openal");
|
||||
}
|
||||
|
||||
@@ -27,6 +27,8 @@ import java.util.ArrayList;
|
||||
import org.lwjgl.BufferUtils;
|
||||
import org.lwjgl.openal.AL10;
|
||||
|
||||
import static com.threerings.openal.Log.log;
|
||||
|
||||
/**
|
||||
* Manages a group of sounds, binding them to OpenAL sources as they are
|
||||
* played and freeing up those sources for use by other sounds when the
|
||||
@@ -107,7 +109,7 @@ public class SoundGroup
|
||||
AL10.alGenSources(_sourceIds);
|
||||
int errno = AL10.alGetError();
|
||||
if (errno != AL10.AL_NO_ERROR) {
|
||||
Log.warning("Failed to create sources [cprov=" + provider +
|
||||
log.warning("Failed to create sources [cprov=" + provider +
|
||||
", sources=" + sources + ", errno=" + errno + "].");
|
||||
_sourceIds = null;
|
||||
// we'll have no sources which means all requests to play
|
||||
|
||||
@@ -33,6 +33,8 @@ import com.samskivert.util.LRUHashMap;
|
||||
import com.samskivert.util.Queue;
|
||||
import com.samskivert.util.RunQueue;
|
||||
|
||||
import static com.threerings.openal.Log.log;
|
||||
|
||||
/**
|
||||
* An interface to the OpenAL library that provides a number of additional services:
|
||||
*
|
||||
@@ -155,15 +157,14 @@ public class SoundManager
|
||||
try {
|
||||
AL.create("", 44100, 15, false);
|
||||
} catch (Exception e) {
|
||||
Log.warning("Failed to initialize sound system.");
|
||||
Log.logStackTrace(e);
|
||||
log.warning("Failed to initialize sound system.", e);
|
||||
// don't start the background loading thread
|
||||
return;
|
||||
}
|
||||
|
||||
int errno = AL10.alGetError();
|
||||
if (errno != AL10.AL_NO_ERROR) {
|
||||
Log.warning("Failed to initialize sound system [errno=" + errno + "].");
|
||||
log.warning("Failed to initialize sound system [errno=" + errno + "].");
|
||||
// don't start the background loading thread
|
||||
return;
|
||||
}
|
||||
@@ -174,7 +175,7 @@ public class SoundManager
|
||||
final ClipBuffer item) {
|
||||
_rqueue.postRunnable(new Runnable() {
|
||||
public void run () {
|
||||
Log.debug("Flushing " + item.getKey());
|
||||
log.debug("Flushing " + item.getKey());
|
||||
item.dispose();
|
||||
}
|
||||
});
|
||||
@@ -211,8 +212,7 @@ public class SoundManager
|
||||
return buffer;
|
||||
|
||||
} catch (Throwable t) {
|
||||
Log.warning("Failure resolving buffer [key=" + ckey + "].");
|
||||
Log.logStackTrace(t);
|
||||
log.warning("Failure resolving buffer [key=" + ckey + "].", t);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -275,12 +275,12 @@ public class SoundManager
|
||||
while (true) {
|
||||
final ClipBuffer buffer = (ClipBuffer)_toLoad.get();
|
||||
try {
|
||||
Log.debug("Loading " + buffer.getKey() + ".");
|
||||
log.debug("Loading " + buffer.getKey() + ".");
|
||||
final Clip clip = buffer.load();
|
||||
_rqueue.postRunnable(new Runnable() {
|
||||
public void run () {
|
||||
Comparable ckey = buffer.getKey();
|
||||
Log.debug("Loaded " + ckey + ".");
|
||||
log.debug("Loaded " + ckey + ".");
|
||||
_loading.remove(ckey);
|
||||
if (buffer.bind(clip)) {
|
||||
_clips.put(ckey, buffer);
|
||||
@@ -292,8 +292,7 @@ public class SoundManager
|
||||
});
|
||||
|
||||
} catch (Throwable t) {
|
||||
Log.warning("Failed to load clip [key=" + buffer.getKey() + "].");
|
||||
Log.logStackTrace(t);
|
||||
log.warning("Failed to load clip [key=" + buffer.getKey() + "].", t);
|
||||
|
||||
// let the clip and its observers know that we are a miserable failure
|
||||
queueClipFailure(buffer);
|
||||
|
||||
@@ -30,6 +30,8 @@ import java.nio.IntBuffer;
|
||||
import org.lwjgl.BufferUtils;
|
||||
import org.lwjgl.openal.AL10;
|
||||
|
||||
import static com.threerings.openal.Log.log;
|
||||
|
||||
/**
|
||||
* Represents a streaming source of sound data.
|
||||
*/
|
||||
@@ -91,7 +93,7 @@ public abstract class Stream
|
||||
public void play ()
|
||||
{
|
||||
if (_state == AL10.AL_PLAYING) {
|
||||
Log.warning("Tried to play stream already playing.");
|
||||
log.warning("Tried to play stream already playing.");
|
||||
return;
|
||||
}
|
||||
if (_state == AL10.AL_INITIAL) {
|
||||
@@ -108,7 +110,7 @@ public abstract class Stream
|
||||
public void pause ()
|
||||
{
|
||||
if (_state != AL10.AL_PLAYING) {
|
||||
Log.warning("Tried to pause stream that wasn't playing.");
|
||||
log.warning("Tried to pause stream that wasn't playing.");
|
||||
return;
|
||||
}
|
||||
AL10.alSourcePause(_sourceId);
|
||||
@@ -121,7 +123,7 @@ public abstract class Stream
|
||||
public void stop ()
|
||||
{
|
||||
if (_state == AL10.AL_STOPPED) {
|
||||
Log.warning("Tried to stop stream that was already stopped.");
|
||||
log.warning("Tried to stop stream that was already stopped.");
|
||||
return;
|
||||
}
|
||||
AL10.alSourceStop(_sourceId);
|
||||
@@ -271,7 +273,7 @@ public abstract class Stream
|
||||
try {
|
||||
read = Math.max(populateBuffer(_abuf), 0);
|
||||
} catch (IOException e) {
|
||||
Log.warning("Error reading audio stream [error=" + e + "].");
|
||||
log.warning("Error reading audio stream [error=" + e + "].");
|
||||
}
|
||||
if (read <= 0) {
|
||||
return false;
|
||||
|
||||
@@ -30,6 +30,8 @@ import java.io.InputStream;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
import static com.threerings.openal.Log.log;
|
||||
|
||||
/**
|
||||
* Decodes audio streams from data read from an {@link InputStream}.
|
||||
*/
|
||||
@@ -52,13 +54,13 @@ public abstract class StreamDecoder
|
||||
String path = file.getPath();
|
||||
int idx = path.lastIndexOf('.');
|
||||
if (idx == -1) {
|
||||
Log.warning("Missing extension for file [file=" + path + "].");
|
||||
log.warning("Missing extension for file [file=" + path + "].");
|
||||
return null;
|
||||
}
|
||||
String extension = path.substring(idx+1);
|
||||
Class clazz = _extensions.get(extension);
|
||||
if (clazz == null) {
|
||||
Log.warning("No decoder registered for extension [extension=" + extension +
|
||||
log.warning("No decoder registered for extension [extension=" + extension +
|
||||
", file=" + path + "].");
|
||||
return null;
|
||||
}
|
||||
@@ -66,7 +68,7 @@ public abstract class StreamDecoder
|
||||
try {
|
||||
decoder = (StreamDecoder)clazz.newInstance();
|
||||
} catch (Exception e) {
|
||||
Log.warning("Error instantiating decoder [file=" + path + ", error=" + e + "].");
|
||||
log.warning("Error instantiating decoder [file=" + path + ", error=" + e + "].");
|
||||
return null;
|
||||
}
|
||||
decoder.init(new FileInputStream(file));
|
||||
|
||||
@@ -38,6 +38,8 @@ import com.samskivert.util.StringUtil;
|
||||
|
||||
import org.apache.commons.io.IOUtils;
|
||||
|
||||
import static com.threerings.resource.Log.log;
|
||||
|
||||
/**
|
||||
* A resource bundle provides access to the resources in a jar file.
|
||||
*/
|
||||
@@ -135,16 +137,16 @@ public class FileResourceBundle extends ResourceBundle
|
||||
try {
|
||||
resolveJarFile();
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failure resolving jar file '" + _source +
|
||||
log.warning("Failure resolving jar file '" + _source +
|
||||
"': " + ioe + ".");
|
||||
wipeBundle(true);
|
||||
return false;
|
||||
}
|
||||
|
||||
Log.info("Unpacking into " + _cache + "...");
|
||||
log.info("Unpacking into " + _cache + "...");
|
||||
if (!_cache.exists()) {
|
||||
if (!_cache.mkdir()) {
|
||||
Log.warning("Failed to create bundle cache directory '" +
|
||||
log.warning("Failed to create bundle cache directory '" +
|
||||
_cache + "'.");
|
||||
closeJar();
|
||||
// we are hopelessly fucked
|
||||
@@ -166,11 +168,11 @@ public class FileResourceBundle extends ResourceBundle
|
||||
try {
|
||||
_unpacked.createNewFile();
|
||||
if (!_unpacked.setLastModified(_sourceLastMod)) {
|
||||
Log.warning("Failed to set last mod on stamp file '" +
|
||||
log.warning("Failed to set last mod on stamp file '" +
|
||||
_unpacked + "'.");
|
||||
}
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Failure creating stamp file '" + _unpacked +
|
||||
log.warning("Failure creating stamp file '" + _unpacked +
|
||||
"': " + ioe + ".");
|
||||
// no need to stick a fork in things at this point
|
||||
}
|
||||
@@ -200,14 +202,14 @@ public class FileResourceBundle extends ResourceBundle
|
||||
// that we ensure that it is revalidated
|
||||
File vfile = new File(FileUtil.resuffix(_source, ".jar", ".jarv"));
|
||||
if (vfile.exists() && !vfile.delete()) {
|
||||
Log.warning("Failed to delete " + vfile + ".");
|
||||
log.warning("Failed to delete " + vfile + ".");
|
||||
}
|
||||
|
||||
// close and delete our source jar file
|
||||
if (deleteJar && _source != null) {
|
||||
closeJar();
|
||||
if (!_source.delete()) {
|
||||
Log.warning("Failed to delete " + _source +
|
||||
log.warning("Failed to delete " + _source +
|
||||
" [exists=" + _source.exists() + "].");
|
||||
}
|
||||
}
|
||||
@@ -329,8 +331,7 @@ public class FileResourceBundle extends ResourceBundle
|
||||
} catch (IOException ioe) {
|
||||
String msg = "Failed to resolve resource bundle jar file '" +
|
||||
_source + "'";
|
||||
Log.warning(msg + ".");
|
||||
Log.logStackTrace(ioe);
|
||||
log.warning(msg + ".", ioe);
|
||||
throw (IOException) new IOException(msg).initCause(ioe);
|
||||
}
|
||||
}
|
||||
@@ -345,7 +346,7 @@ public class FileResourceBundle extends ResourceBundle
|
||||
_jarSource.close();
|
||||
}
|
||||
} catch (Exception ioe) {
|
||||
Log.warning("Failed to close jar file [path=" + _source +
|
||||
log.warning("Failed to close jar file [path=" + _source +
|
||||
", error=" + ioe + "].");
|
||||
}
|
||||
}
|
||||
@@ -358,7 +359,7 @@ public class FileResourceBundle extends ResourceBundle
|
||||
if (_tmpdir == null) {
|
||||
String tmpdir = System.getProperty("java.io.tmpdir");
|
||||
if (tmpdir == null) {
|
||||
Log.info("No system defined temp directory. Faking it.");
|
||||
log.info("No system defined temp directory. Faking it.");
|
||||
tmpdir = System.getProperty("user.home");
|
||||
}
|
||||
setCacheDir(new File(tmpdir));
|
||||
@@ -375,16 +376,16 @@ public class FileResourceBundle extends ResourceBundle
|
||||
_tmpdir = new File(tmpdir, "narcache_" + rando);
|
||||
if (!_tmpdir.exists()) {
|
||||
if (_tmpdir.mkdirs()) {
|
||||
Log.debug("Created narya temp cache directory '" + _tmpdir + "'.");
|
||||
log.debug("Created narya temp cache directory '" + _tmpdir + "'.");
|
||||
} else {
|
||||
Log.warning("Failed to create temp cache directory '" + _tmpdir + "'.");
|
||||
log.warning("Failed to create temp cache directory '" + _tmpdir + "'.");
|
||||
}
|
||||
}
|
||||
|
||||
// add a hook to blow away the temp directory when we exit
|
||||
Runtime.getRuntime().addShutdownHook(new Thread() {
|
||||
public void run () {
|
||||
Log.info("Clearing narya temp cache '" + _tmpdir + "'.");
|
||||
log.info("Clearing narya temp cache '" + _tmpdir + "'.");
|
||||
FileUtil.recursiveDelete(_tmpdir);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -43,6 +43,8 @@ import com.samskivert.util.StringUtil;
|
||||
|
||||
import com.threerings.geom.GeomUtil;
|
||||
|
||||
import static com.threerings.resource.Log.log;
|
||||
|
||||
/**
|
||||
* This class is not used directly, except by a registering ResourceManager
|
||||
* so that we can load data from the resource manager using URLs of the form
|
||||
@@ -105,7 +107,7 @@ public class Handler extends URLStreamHandler
|
||||
this.connected = true;
|
||||
|
||||
} catch (IOException ioe) {
|
||||
Log.warning("Could not find resource [url=" + this.url +
|
||||
log.warning("Could not find resource [url=" + this.url +
|
||||
", error=" + ioe.getMessage() + "].");
|
||||
throw ioe; // rethrow
|
||||
}
|
||||
@@ -144,7 +146,7 @@ public class Handler extends URLStreamHandler
|
||||
{
|
||||
// we can only do this with PNGs
|
||||
if (!path.endsWith(".png")) {
|
||||
Log.warning("Requested sub-tile of non-PNG resource " +
|
||||
log.warning("Requested sub-tile of non-PNG resource " +
|
||||
"[bundle=" + bundle + ", path=" + path +
|
||||
", dims=" + query + "].");
|
||||
return _rmgr.getResource(bundle, path);
|
||||
@@ -166,7 +168,7 @@ public class Handler extends URLStreamHandler
|
||||
} catch (NumberFormatException nfe) {
|
||||
}
|
||||
if (width <= 0 || height <= 0 || tidx < 0) {
|
||||
Log.warning("Bogus sub-image dimensions [bundle=" + bundle +
|
||||
log.warning("Bogus sub-image dimensions [bundle=" + bundle +
|
||||
", path=" + path + ", dims=" + query + "].");
|
||||
throw new FileNotFoundException(path);
|
||||
}
|
||||
|
||||
@@ -21,36 +21,12 @@
|
||||
|
||||
package com.threerings.resource;
|
||||
|
||||
import com.samskivert.util.Logger;
|
||||
|
||||
/**
|
||||
* A placeholder class that contains a reference to the log object used by
|
||||
* the resource management package.
|
||||
* Contains a reference to the log object used by the resource management package.
|
||||
*/
|
||||
public class Log
|
||||
{
|
||||
public static com.samskivert.util.Log log =
|
||||
new com.samskivert.util.Log("resource");
|
||||
|
||||
/** Convenience function. */
|
||||
public static void debug (String message)
|
||||
{
|
||||
log.debug(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void info (String message)
|
||||
{
|
||||
log.info(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void warning (String message)
|
||||
{
|
||||
log.warning(message);
|
||||
}
|
||||
|
||||
/** Convenience function. */
|
||||
public static void logStackTrace (Throwable t)
|
||||
{
|
||||
log.logStackTrace(com.samskivert.util.Log.WARNING, t);
|
||||
}
|
||||
public static Logger log = Logger.getLogger("com.threerings.resource");
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user