package com.microsoft.live.test.util; import java.util.concurrent.BlockingQueue; import com.microsoft.live.LiveConnectClient; import com.microsoft.live.LiveOperation; import com.microsoft.live.LiveOperationListener; /** * This class is ran on the UI thread to prevent deadlocking. * It adds any operations or exceptions returned to the appropriate * blocking queue. */ public class CopyAsyncRunnable extends AsyncRunnableWithDestination<LiveOperation, LiveOperationListener> { public CopyAsyncRunnable(BlockingQueue<LiveOperation> queue, LiveConnectClient connectClient, String path, String destination, LiveOperationListener listener) { super(queue, connectClient, path, destination, listener); } public CopyAsyncRunnable(BlockingQueue<LiveOperation> queue, LiveConnectClient connectClient, String path, String destination, LiveOperationListener listener, Object userState) { super(queue, connectClient, path, destination, listener, userState); } @Override protected LiveOperation calledWithoutUserState() { return connectClient.copyAsync(path, destination, listener); } @Override protected LiveOperation calledWithUserState(Object userState) { return connectClient.copyAsync(path, destination, listener, userState); } }