Files
vilya/apidocs/com/threerings/stats/server/persist/StatRepository.html
T
2011-04-06 17:01:15 -07:00

520 lines
33 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_24) on Wed Apr 06 17:00:16 PDT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
StatRepository (vilya 1.3 API)
</TITLE>
<META NAME="date" CONTENT="2011-04-06">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="StatRepository (vilya 1.3 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/StatRepository.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../com/threerings/stats/server/persist/StatRecord.html" title="class in com.threerings.stats.server.persist"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../com/threerings/stats/server/persist/StringCodeRecord.html" title="class in com.threerings.stats.server.persist"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?com/threerings/stats/server/persist/StatRepository.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="StatRepository.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_classes_inherited_from_class_com.samskivert.depot.DepotRepository">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.threerings.stats.server.persist</FONT>
<BR>
Class StatRepository</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true" title="class or interface in com.samskivert.depot">com.samskivert.depot.DepotRepository</A>
<IMG SRC="../../../../../resources/inherit.gif" ALT="extended by "><B>com.threerings.stats.server.persist.StatRepository</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html" title="interface in com.threerings.stats.data">Stat.AuxDataSource</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>StatRepository</B><DT>extends <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true" title="class or interface in com.samskivert.depot">DepotRepository</A><DT>implements <A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html" title="interface in com.threerings.stats.data">Stat.AuxDataSource</A></DL>
</PRE>
<P>
Responsible for the persistent storage of per-player statistics.
<P>
<P>
<HR>
<P>
<!-- ======== NESTED CLASS SUMMARY ======== -->
<A NAME="nested_class_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Nested Class Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="nested_classes_inherited_from_class_com.samskivert.depot.DepotRepository"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Nested classes/interfaces inherited from class com.samskivert.depot.<A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true" title="class or interface in com.samskivert.depot">DepotRepository</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.CacheStrategy.html?is-external=true" title="class or interface in com.samskivert.depot">DepotRepository.CacheStrategy</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#StatRepository(com.samskivert.depot.PersistenceContext)">StatRepository</A></B>(<A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/PersistenceContext.html?is-external=true" title="class or interface in com.samskivert.depot">PersistenceContext</A>&nbsp;context)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new statistics repository with the specified persistence context.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#clearMapping(com.threerings.stats.data.Stat.Type, java.lang.String)">clearMapping</A></B>(<A HREF="../../../../../com/threerings/stats/data/Stat.Type.html" title="interface in com.threerings.stats.data">Stat.Type</A>&nbsp;type,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This is only used for testing.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#deleteStats(int)">deleteStats</A></B>(int&nbsp;playerId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Deletes all stats associated with the specified player.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#getCodeString(com.threerings.stats.data.Stat.Type, int)">getCodeString</A></B>(<A HREF="../../../../../com/threerings/stats/data/Stat.Type.html" title="interface in com.threerings.stats.data">Stat.Type</A>&nbsp;type,
int&nbsp;code)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maps the specified unique code back to its string value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#getStringCode(com.threerings.stats.data.Stat.Type, java.lang.String)">getStringCode</A></B>(<A HREF="../../../../../com/threerings/stats/data/Stat.Type.html" title="interface in com.threerings.stats.data">Stat.Type</A>&nbsp;type,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Maps the specified string to a unique integer value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</A>&lt;<A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#loadStats(int)">loadStats</A></B>(int&nbsp;playerId)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Loads the stats associated with the specified player.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#purgePlayers(java.util.Collection)">purgePlayers</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</A>&lt;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;playerIds)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Deletes all data associated with the supplied players.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" SUMMARY="">
<TR ALIGN="right" VALIGN="">
<TD NOWRAP><FONT SIZE="-1">
<CODE>&lt;T extends <A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>&gt;
<BR>
T</CODE></FONT></TD>
</TR>
</TABLE>
</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#updateStat(int, com.threerings.stats.data.StatModifier)">updateStat</A></B>(int&nbsp;playerId,
<A HREF="../../../../../com/threerings/stats/data/StatModifier.html" title="class in com.threerings.stats.data">StatModifier</A>&lt;T&gt;&nbsp;modifier)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Applies a modification to a single stat.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#writeModified(int, java.lang.Iterable)">writeModified</A></B>(int&nbsp;playerId,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</A>&lt;<A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>&gt;&nbsp;stats)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Writes out any of the stats in the supplied iterable that have been modified since they were
first loaded.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../com/threerings/stats/server/persist/StatRepository.html#writeModified(int, com.threerings.stats.data.Stat[])">writeModified</A></B>(int&nbsp;playerId,
<A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>[]&nbsp;stats)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Writes out any of the stats in the supplied array that have been modified since they were
first loaded.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.samskivert.depot.DepotRepository"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.samskivert.depot.<A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true" title="class or interface in com.samskivert.depot">DepotRepository</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#delete(com.samskivert.depot.Key)" title="class or interface in com.samskivert.depot">delete</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#delete(T)" title="class or interface in com.samskivert.depot">delete</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#deleteAll(java.lang.Class, com.samskivert.depot.clause.WhereClause)" title="class or interface in com.samskivert.depot">deleteAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#deleteAll(java.lang.Class, com.samskivert.depot.clause.WhereClause, com.samskivert.depot.CacheInvalidator)" title="class or interface in com.samskivert.depot">deleteAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#findAll(java.lang.Class, com.samskivert.depot.DepotRepository.CacheStrategy, java.lang.Iterable)" title="class or interface in com.samskivert.depot">findAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#findAll(java.lang.Class, com.samskivert.depot.DepotRepository.CacheStrategy, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">findAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#findAll(java.lang.Class, java.lang.Iterable)" title="class or interface in com.samskivert.depot">findAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#findAll(java.lang.Class, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">findAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#findAllKeys(java.lang.Class, boolean, java.lang.Iterable)" title="class or interface in com.samskivert.depot">findAllKeys</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#findAllKeys(java.lang.Class, boolean, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">findAllKeys</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#from(java.lang.Class)" title="class or interface in com.samskivert.depot">from</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#insert(T)" title="class or interface in com.samskivert.depot">insert</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#load(java.lang.Class, com.samskivert.depot.DepotRepository.CacheStrategy, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">load</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#load(java.lang.Class, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">load</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#load(com.samskivert.depot.Key, com.samskivert.depot.DepotRepository.CacheStrategy, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">load</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#load(com.samskivert.depot.Key, com.samskivert.depot.clause.QueryClause...)" title="class or interface in com.samskivert.depot">load</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#loadAll(java.lang.Class, java.lang.Iterable)" title="class or interface in com.samskivert.depot">loadAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#loadAll(java.lang.Iterable)" title="class or interface in com.samskivert.depot">loadAll</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#store(T)" title="class or interface in com.samskivert.depot">store</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#update(com.samskivert.depot.PersistentRecord)" title="class or interface in com.samskivert.depot">update</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#update(T, com.samskivert.depot.expression.ColumnExp...)" title="class or interface in com.samskivert.depot">update</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#updatePartial(java.lang.Class, com.samskivert.depot.clause.WhereClause, com.samskivert.depot.CacheInvalidator, com.samskivert.depot.expression.ColumnExp[], com.samskivert.depot.expression.SQLExpression[])" title="class or interface in com.samskivert.depot">updatePartial</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#updatePartial(java.lang.Class, com.samskivert.depot.clause.WhereClause, com.samskivert.depot.CacheInvalidator, com.samskivert.depot.expression.ColumnExp, java.lang.Object, java.lang.Object...)" title="class or interface in com.samskivert.depot">updatePartial</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#updatePartial(java.lang.Class, com.samskivert.depot.clause.WhereClause, com.samskivert.depot.CacheInvalidator, java.util.Map)" title="class or interface in com.samskivert.depot">updatePartial</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#updatePartial(com.samskivert.depot.Key, com.samskivert.depot.expression.ColumnExp, java.lang.Object, java.lang.Object...)" title="class or interface in com.samskivert.depot">updatePartial</A>, <A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/DepotRepository.html?is-external=true#updatePartial(com.samskivert.depot.Key, java.util.Map)" title="class or interface in com.samskivert.depot">updatePartial</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="StatRepository(com.samskivert.depot.PersistenceContext)"><!-- --></A><H3>
StatRepository</H3>
<PRE>
<FONT SIZE="-1">@Inject
</FONT>public <B>StatRepository</B>(<A HREF="http://depot.googlecode.com/svn/apidocs/com/samskivert/depot/PersistenceContext.html?is-external=true" title="class or interface in com.samskivert.depot">PersistenceContext</A>&nbsp;context)</PRE>
<DL>
<DD>Constructs a new statistics repository with the specified persistence context.
<P>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="updateStat(int, com.threerings.stats.data.StatModifier)"><!-- --></A><H3>
updateStat</H3>
<PRE>
public &lt;T extends <A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>&gt; T <B>updateStat</B>(int&nbsp;playerId,
<A HREF="../../../../../com/threerings/stats/data/StatModifier.html" title="class in com.threerings.stats.data">StatModifier</A>&lt;T&gt;&nbsp;modifier)</PRE>
<DL>
<DD>Applies a modification to a single stat. If the stat in question does not exist, a blank
instance will be created via <A HREF="../../../../../com/threerings/stats/data/Stat.Type.html#newStat()"><CODE>Stat.Type.newStat()</CODE></A>.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the modified Stat, if any modification took place; or null if the modification had
no effect on the stat's data.</DL>
</DD>
</DL>
<HR>
<A NAME="loadStats(int)"><!-- --></A><H3>
loadStats</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/ArrayList.html?is-external=true" title="class or interface in java.util">ArrayList</A>&lt;<A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>&gt; <B>loadStats</B>(int&nbsp;playerId)</PRE>
<DL>
<DD>Loads the stats associated with the specified player.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="deleteStats(int)"><!-- --></A><H3>
deleteStats</H3>
<PRE>
public void <B>deleteStats</B>(int&nbsp;playerId)</PRE>
<DL>
<DD>Deletes all stats associated with the specified player.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="writeModified(int, com.threerings.stats.data.Stat[])"><!-- --></A><H3>
writeModified</H3>
<PRE>
public void <B>writeModified</B>(int&nbsp;playerId,
<A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>[]&nbsp;stats)</PRE>
<DL>
<DD>Writes out any of the stats in the supplied array that have been modified since they were
first loaded. Exceptions that occur while writing the stats will be caught and logged.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="writeModified(int, java.lang.Iterable)"><!-- --></A><H3>
writeModified</H3>
<PRE>
public void <B>writeModified</B>(int&nbsp;playerId,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</A>&lt;<A HREF="../../../../../com/threerings/stats/data/Stat.html" title="class in com.threerings.stats.data">Stat</A>&gt;&nbsp;stats)</PRE>
<DL>
<DD>Writes out any of the stats in the supplied iterable that have been modified since they were
first loaded. Exceptions that occur while writing the stats will be caught and logged.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getStringCode(com.threerings.stats.data.Stat.Type, java.lang.String)"><!-- --></A><H3>
getStringCode</H3>
<PRE>
public int <B>getStringCode</B>(<A HREF="../../../../../com/threerings/stats/data/Stat.Type.html" title="interface in com.threerings.stats.data">Stat.Type</A>&nbsp;type,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;value)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html#getStringCode(com.threerings.stats.data.Stat.Type, java.lang.String)">Stat.AuxDataSource</A></CODE></B></DD>
<DD>Maps the specified string to a unique integer value.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html#getStringCode(com.threerings.stats.data.Stat.Type, java.lang.String)">getStringCode</A></CODE> in interface <CODE><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html" title="interface in com.threerings.stats.data">Stat.AuxDataSource</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getCodeString(com.threerings.stats.data.Stat.Type, int)"><!-- --></A><H3>
getCodeString</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A> <B>getCodeString</B>(<A HREF="../../../../../com/threerings/stats/data/Stat.Type.html" title="interface in com.threerings.stats.data">Stat.Type</A>&nbsp;type,
int&nbsp;code)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html#getCodeString(com.threerings.stats.data.Stat.Type, int)">Stat.AuxDataSource</A></CODE></B></DD>
<DD>Maps the specified unique code back to its string value.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html#getCodeString(com.threerings.stats.data.Stat.Type, int)">getCodeString</A></CODE> in interface <CODE><A HREF="../../../../../com/threerings/stats/data/Stat.AuxDataSource.html" title="interface in com.threerings.stats.data">Stat.AuxDataSource</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="clearMapping(com.threerings.stats.data.Stat.Type, java.lang.String)"><!-- --></A><H3>
clearMapping</H3>
<PRE>
public void <B>clearMapping</B>(<A HREF="../../../../../com/threerings/stats/data/Stat.Type.html" title="interface in com.threerings.stats.data">Stat.Type</A>&nbsp;type,
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;value)</PRE>
<DL>
<DD>This is only used for testing. Do not call this method.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="purgePlayers(java.util.Collection)"><!-- --></A><H3>
purgePlayers</H3>
<PRE>
public void <B>purgePlayers</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</A>&lt;<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</A>&gt;&nbsp;playerIds)</PRE>
<DL>
<DD>Deletes all data associated with the supplied players.
<P>
<DD><DL>
</DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/StatRepository.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../com/threerings/stats/server/persist/StatRecord.html" title="class in com.threerings.stats.server.persist"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../com/threerings/stats/server/persist/StringCodeRecord.html" title="class in com.threerings.stats.server.persist"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../index.html?com/threerings/stats/server/persist/StatRepository.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="StatRepository.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;<A HREF="#nested_classes_inherited_from_class_com.samskivert.depot.DepotRepository">NESTED</A>&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2011. All Rights Reserved.
</BODY>
</HTML>