Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/data/TaskDataStore.java')
-rw-r--r--org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/data/TaskDataStore.java166
1 files changed, 0 insertions, 166 deletions
diff --git a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/data/TaskDataStore.java b/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/data/TaskDataStore.java
deleted file mode 100644
index 9dd1e692b..000000000
--- a/org.eclipse.mylyn.tasks.core/src/org/eclipse/mylyn/internal/tasks/core/data/TaskDataStore.java
+++ /dev/null
@@ -1,166 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2008 Tasktop Technologies and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Tasktop Technologies - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.mylyn.internal.tasks.core.data;
-
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipInputStream;
-import java.util.zip.ZipOutputStream;
-
-import org.eclipse.core.runtime.Assert;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.mylyn.internal.tasks.core.ITasksCoreConstants;
-import org.eclipse.mylyn.tasks.core.IRepositoryManager;
-import org.eclipse.mylyn.tasks.core.data.TaskData;
-
-/**
- * @author Steffen Pingel
- */
-public class TaskDataStore {
-
- private static final String FILE_NAME_INTERNAL = "data.xml"; //$NON-NLS-1$
-
- private final TaskDataExternalizer externalizer;
-
- public TaskDataStore(IRepositoryManager taskRepositoryManager) {
- this.externalizer = new TaskDataExternalizer(taskRepositoryManager);
- }
-
- public synchronized TaskDataState discardEdits(File file) throws CoreException {
- TaskDataState state = readState(file);
- if (state != null) {
- state.setEditsData(null);
- }
- writeState(file, state);
- return state;
- }
-
- public synchronized TaskDataState getTaskDataState(File file) throws CoreException {
- return readState(file);
- }
-
- public synchronized void putEdits(File file, TaskData data) throws CoreException {
- Assert.isNotNull(file);
- Assert.isNotNull(data);
- TaskDataState state = readState(file);
- if (state == null) {
- state = new TaskDataState(data.getConnectorKind(), data.getRepositoryUrl(), data.getTaskId());
- }
- state.setEditsData(data);
- writeState(file, state);
- }
-
- public synchronized void putTaskData(File file, TaskData data, boolean setLastRead, boolean user)
- throws CoreException {
- Assert.isNotNull(file);
- Assert.isNotNull(data);
- TaskDataState state = null;
- try {
- state = readState(file);
- } catch (CoreException e) {
- if (!user) {
- throw new CoreException(
- new Status(
- IStatus.ERROR,
- ITasksCoreConstants.ID_PLUGIN,
- "Reading of existing task data failed. Forcing synchronization will override outgoing changes.", //$NON-NLS-1$
- e));
- }
- }
- if (state == null) {
- state = new TaskDataState(data.getConnectorKind(), data.getRepositoryUrl(), data.getTaskId());
- }
- if (setLastRead) {
- state.setLastReadData(state.getRepositoryData());
- }
- state.setRepositoryData(data);
- writeState(file, state);
- }
-
- public synchronized void setTaskData(File file, TaskData data) throws CoreException {
- Assert.isNotNull(file);
- Assert.isNotNull(data);
-
- // TODO consider reading old task data and compare submitted results to check if all outgoing changes were accepted by repository
-
- TaskDataState state = new TaskDataState(data.getConnectorKind(), data.getRepositoryUrl(), data.getTaskId());
- state.setRepositoryData(data);
- state.setEditsData(null);
- state.setLastReadData(data);
- writeState(file, state);
- }
-
- private TaskDataState readState(File file) throws CoreException {
- try {
- if (file.exists()) {
- ZipInputStream in = new ZipInputStream(new BufferedInputStream(new FileInputStream(file)));
- try {
- in.getNextEntry();
- return externalizer.readState(in);
- } finally {
- in.close();
- }
- }
- return null;
- } catch (IOException e) {
- throw new CoreException(new Status(IStatus.ERROR, ITasksCoreConstants.ID_PLUGIN, "Error reading task data", //$NON-NLS-1$
- e));
- }
- }
-
- private void writeState(File file, TaskDataState state) throws CoreException {
- try {
- ZipOutputStream out = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(file)));
- try {
- out.setMethod(ZipOutputStream.DEFLATED);
-
- ZipEntry entry = new ZipEntry(FILE_NAME_INTERNAL);
- out.putNextEntry(entry);
-
- externalizer.writeState(out, state);
- } finally {
- out.close();
- }
- } catch (IOException e) {
- throw new CoreException(new Status(IStatus.ERROR, ITasksCoreConstants.ID_PLUGIN, "Error writing task data", //$NON-NLS-1$
- e));
- }
- }
-
-// public synchronized void putLastRead(File file, TaskData data) throws CoreException {
-// Assert.isNotNull(file);
-// Assert.isNotNull(data);
-//
-// TaskDataState state = readState(file);
-// if (state == null) {
-// state = new TaskDataState(data.getConnectorKind(), data.getRepositoryUrl(), data.getTaskId());
-// }
-// state.setLastReadData(data);
-// writeState(file, state);
-// }
-
- public synchronized void putTaskData(File file, TaskDataState state) throws CoreException {
- writeState(file, state);
- }
-
- public synchronized boolean deleteTaskData(File file) {
- return file.delete();
- }
-
-}

Back to the top