public QueryState getState() { if(query == null) { if (isInitError()) { return QueryState.QUERY_ERROR; } else { return QueryState.QUERY_NOT_ASSIGNED; } } else { return query.getState(); } }
public QueryState getState() { if(query == null) { if (isInitError()) { return QueryState.QUERY_ERROR; } else { return QueryState.QUERY_NOT_ASSIGNED; } } else { return query.getState(); } }
public float getProgress() { QueryState state = getState(); if (state == QueryState.QUERY_SUCCEEDED) { return 1.0f; } else { int idx = 0; List<Stage> tempStages = new ArrayList<>(); synchronized(stages) { tempStages.addAll(stages.values()); } float [] subProgresses = new float[tempStages.size()]; for (Stage stage: tempStages) { if (stage.getState() != StageState.NEW) { subProgresses[idx] = stage.getProgress(); } else { subProgresses[idx] = 0.0f; } idx++; } float totalProgress = 0.0f; float proportion = 1.0f / (float)(getExecutionBlockCursor().size() - 1); // minus one is due to for (float subProgress : subProgresses) { totalProgress += subProgress * proportion; } return totalProgress; } }
public float getProgress() { QueryState state = getState(); if (state == QueryState.QUERY_SUCCEEDED) { return 1.0f; } else { int idx = 0; List<Stage> tempStages = new ArrayList<Stage>(); synchronized(stages) { tempStages.addAll(stages.values()); } float [] subProgresses = new float[tempStages.size()]; for (Stage stage: tempStages) { if (stage.getState() != StageState.NEW) { subProgresses[idx] = stage.getProgress(); } else { subProgresses[idx] = 0.0f; } idx++; } float totalProgress = 0.0f; float proportion = 1.0f / (float)(getExecutionBlockCursor().size() - 1); // minus one is due to for (int i = 0; i < subProgresses.length; i++) { totalProgress += subProgresses[i] * proportion; } return totalProgress; } }