dispose and delete

This commit is contained in:
Colin Megill
2018-10-15 11:20:52 -07:00
parent 8e08534d42
commit 8114d7565a
+13 -12
View File
@@ -275,23 +275,18 @@ const Controls = (
}; };
} }
case "clear differential expression": { case "clear differential expression": {
const { world, universe, crossfilter, dimensionMap } = state; const { world, universe, dimensionMap } = state;
const _dimensionMap = dimensionMap; const _dimensionMap = dimensionMap;
const universeVarDataCache = universe.varDataCache; const universeVarDataCache = universe.varDataCache;
const worldVarDataCache = world.varDataCache; const worldVarDataCache = world.varDataCache;
_.forEach(action.diffExp, values => { _.forEach(action.diffExp, values => {
const { name } = world.varAnnotations[values[0]].name; const { name } = world.varAnnotations[values[0]];
// clean up crossfilter dimensions // clean up crossfilter dimensions
const filterID = dimensionMap[diffexpDimensionName(name)]; console.log("clear", name);
const dimension = crossfilter.filters.find(d => d.id === filterID); const dimension = dimensionMap[diffexpDimensionName(name)];
dimension.dim.dispose(); dimension.dispose();
delete dimensionMap[diffexpDimensionName(name)];
// clean up dimensionsMap
delete _dimensionMap[diffexpDimensionName(name)];
// clean up the varDataCaches
delete universeVarDataCache[name];
delete worldVarDataCache[name];
}); });
return { return {
...state, ...state,
@@ -320,13 +315,19 @@ const Controls = (
}; };
} }
case "clear user defined gene": { case "clear user defined gene": {
const { userDefinedGenes } = state; const { userDefinedGenes, dimensionMap } = state;
const newUserDefinedGenes = _.filter( const newUserDefinedGenes = _.filter(
userDefinedGenes, userDefinedGenes,
d => d !== action.data d => d !== action.data
); );
const dimension = dimensionMap[userDefinedDimensionName(action.data)];
dimension.dispose();
delete dimensionMap[userDefinedDimensionName(action.data)];
return { return {
...state, ...state,
dimensionMap,
userDefinedGenes: newUserDefinedGenes userDefinedGenes: newUserDefinedGenes
}; };
} }