private void updateTimeSeriesMeta(CategoryDbTable.Row row, boolean disable) { TimeSeries ts = getSeriesByIdNonlocking(row.getId()); if (ts == null) { if (mDefaultPainter == null) { TimeSeriesPainter p = new TimeSeriesPainter.Default(); ts = new TimeSeries(row, mHistory, mSmoothing, p); } else { ts = new TimeSeries(row, mHistory, mSmoothing, mDefaultPainter); } mSeries.add(ts); mDatapointCache.addCacheableCategory(row.getId(), mHistory); } ts.setDbRow(row); setSeriesInterpolator(ts, row.getInterpolation()); if (row.getSynthetic() == true) { Formula formula = mFormulaCache.getFormula(Long.valueOf(row.getId())); if (formula == null) formula = new Formula(); formula.setFormula(row.getFormula()); mFormulaCache.setFormula(row.getId(), formula); } if (disable) ts.setEnabled(false); setDependents(ts); setDependees(ts); }