package edu.washington.cs.oneswarm.ui.gwt.rpc; import java.util.ArrayList; import java.util.HashMap; import com.google.gwt.user.client.rpc.AsyncCallback; import edu.washington.cs.oneswarm.ui.gwt.rpc.OneSwarmConstants.SecurityLevel; public interface OneSwarmUIServiceAsync { public void startBackend(AsyncCallback callback); public void getVersion(String session, AsyncCallback<String> callback); public void createSwarmFromLocalFileSystemPath(String session, String basePath, ArrayList<String> path, boolean startSeeding, String announce, ArrayList<PermissionsGroup> inPermittedGroups, AsyncCallback<Boolean> callback); public void reportError(ReportableException inError, AsyncCallback callback); public void getTorrentsInfo(String session, int page, AsyncCallback callback); public void getTransferringInfo(String session, AsyncCallback<TorrentList> inCallback); public void getStopped(String session, AsyncCallback<Boolean> inCallback); public void recentFriendChanges(String session, AsyncCallback<Boolean> inCallback); public void setRecentChanges(String session, boolean value, AsyncCallback callback); public void getSidebarStats(String session, AsyncCallback<HashMap<String, String>> inCallback); public void getLimits(String session, AsyncCallback<HashMap<String, String>> inCallback); public void getDataStats(String session, AsyncCallback<HashMap<String, String>> inCallback); public void getCounts(String session, AsyncCallback<HashMap<String, String>> inCallback); public void resetLimit(String session, String limittype, AsyncCallback callback); public void checkIfWarning(String session, AsyncCallback<String[]> inCallback); public void setLimits(String session, String day, String week, String month, String year, AsyncCallback callback); public void ping(String session, String version, AsyncCallback<String> callback); public void startTorrent(String session, String[] torrentID, AsyncCallback<Boolean> callback); public void stopTorrent(String session, String[] torrenID, AsyncCallback<Boolean> callback); public void downloadTorrent(String session, String path, AsyncCallback<Integer> callback); public void downloadTorrent(String session, int friendConnection, int channelId, String torrentId, int lengthHint, AsyncCallback<Integer> callback); public void addDownloadFromLocalTorrentDefaultSaveLocation(String session, String inPathToTorrent, ArrayList<PermissionsGroup> inPermissions, AsyncCallback<Void> callback); // public void addDownloadFromLocalTorrent(String session, String path, // String savePath, boolean skipCheck, ArrayList<PermissionsGroup> // inPermissions, // AsyncCallback<Void> callback); public void getTorrentDownloadProgress(String session, int torrentDownloadID, AsyncCallback<Integer> callback); public void getTorrentFiles(String session, int torrentDownloadID, AsyncCallback<FileListLite[]> callback); public void getTorrentName(String session, int inID, AsyncCallback<String> callback); public void addTorrent(String session, int torrentDownloadID, FileListLite[] selectedFiles, ArrayList<PermissionsGroup> inPerms, String path, boolean noStream, AsyncCallback<Boolean> callback); public void torrentExists(String session, String torrentID, AsyncCallback<Boolean> callback); public void deleteData(String session, String[] torrentID, AsyncCallback<Boolean> callback); public void deleteFromShareKeepData(String session, String[] torrentID, AsyncCallback<ReportableException> callback); public void deleteCompletely(String session, String[] torrentID, AsyncCallback<ReportableException> callback); public void addFriend(String session, FriendInfoLite friendInfoLite, boolean testOnly, AsyncCallback<Void> callback); public void scanXMLForFriends(String session, String text, AsyncCallback<FriendInfoLite[]> callback); public void applySwarmPermissionChanges(String session, ArrayList<TorrentInfo> inSwarms, AsyncCallback<Void> callback); public void getFriends(String session, int prevListId, boolean includeDisconnected, boolean includeBlocked, AsyncCallback<FriendList> callback); public void getMyPublicKey(String session, AsyncCallback<String> callback); public void getFileList(String session, int connectionId, String filter, int startNum, int num, long maxCacheAge, AsyncCallback<FileListLite[]> callback); public void sendSearch(String session, String searchString, AsyncCallback<Integer> callback); public void revealSwarmInFinder(String session, TorrentInfo[] inSwarm, AsyncCallback<ReportableException> callback); // public void revealPathInFinder(String session, String path, AsyncCallback // callback); public void openFileDefaultApp(String session, TorrentInfo[] inSwarm, AsyncCallback<ReportableException> callback); public void getSearchResult(String session, int searchId, AsyncCallback<TextSearchResultLite[]> callback); public void getFiles(String session, String path, AsyncCallback callback); public void getFriendTransferStats(String session, AsyncCallback<ArrayList<HashMap<String, String>>> callback); public void setFriendsSettings(String session, FriendInfoLite[] updated, AsyncCallback<Void> callback); public void getPendingCommunityFriendImports(String session, AsyncCallback<FriendList> callback); public void getNewUsersFromXMPP(String session, String xmppNetworkName, String username, char[] password, String machineName, AsyncCallback<FriendInfoLite[]> callback); public void pollCommunityServer(String session, CommunityRecord record, AsyncCallback<Integer> callback); public void getTorrentsState(String session, AsyncCallback<HashMap<String, Integer>> callback); public void getComputerName(String session, AsyncCallback<String> callback); public void setComputerName(String session, String computerName, AsyncCallback<Void> callback); public void pagedTorrentStateRefresh(String session, ArrayList<String> whichOnes, AsyncCallback<TorrentInfo[]> callback); public void getIntegerParameterValue(String session, String inParamName, AsyncCallback<Integer> callback); public void setIntegerParameterValue(String session, String inParamName, Integer inValue, AsyncCallback<Void> callback); public void getBooleanParameterValue(String session, String inParamName, AsyncCallback<Boolean> callback); public void setBooleanParameterValue(String session, String inParamName, Boolean inValue, AsyncCallback<Void> callback); public void getStringParameterValue(String session, String inParamName, AsyncCallback<String> callback); public void setStringParameterValue(String session, String inParamName, String inValue, AsyncCallback<Void> callback); public void getStringListParameterValue(String session, String inParamName, AsyncCallback<ArrayList<String>> callback); public void setStringListParameterValue(String session, String inParamName, ArrayList<String> value, AsyncCallback<Void> callback); public void getDownloadManagersCount(String session, AsyncCallback<Integer> callback); public void getPagedAndFilteredSwarms(int inPage, int swarmsPerPage, String filter, int sort, String type, boolean includeF2F, int inSelectedFriendID, String inTagPath, AsyncCallback<PagedTorrentInfo> callback); public void getFilesForDownloadingTorrentHash(String session, String inOneSwarmHash, AsyncCallback<FileListLite[]> callback); public void updateSkippedFiles(String session, FileListLite[] lites, AsyncCallback<ReportableException> callback); public void getAllGroups(String session, AsyncCallback<ArrayList<PermissionsGroup>> callback); public void getFriendsForGroup(String session, PermissionsGroup inGroup, AsyncCallback<ArrayList<FriendInfoLite>> callback); public void getGroupsForSwarm(String session, TorrentInfo inSwarm, AsyncCallback<ArrayList<PermissionsGroup>> callback); public void setGroupsForSwarm(String session, TorrentInfo inSwarm, ArrayList<PermissionsGroup> inGroups, AsyncCallback<ReportableException> callback); public void updateGroupMembership(String session, PermissionsGroup inGroup, ArrayList<FriendInfoLite> inMembers, AsyncCallback<PermissionsGroup> callback); public void removeGroup(String session, Long inGroupID, AsyncCallback<ReportableException> callback); public void connectToFriends(String session, FriendInfoLite[] friendLite, AsyncCallback<Void> callback); public void getUpdatedFriendInfo(String session, FriendInfoLite friendLite, AsyncCallback<FriendInfoLite> callback); public void getBackendTasks(String session, AsyncCallback<BackendTask[]> callback); public void getBackendTask(String session, int inID, AsyncCallback<BackendTask> callback); public void cancelBackendTask(String session, int inID, AsyncCallback<Void> callback); public void debug(String session, String which, AsyncCallback<String> callback); public void getLanOneSwarmUsers(String session, AsyncCallback<FriendInfoLite[]> callback); public void getRemoteAccessUserName(String session, AsyncCallback<String> callback); public void saveRemoteAccessCredentials(String session, String username, String password, AsyncCallback<String> callback); public void getListenAddresses(String session, AsyncCallback<String[]> asyncCallback); public void getNewFriendsCountsFromAutoCheck(String session, AsyncCallback<HashMap<String, Integer>> callback); public void getDeniedIncomingConnections(String session, AsyncCallback<HashMap<String, String>> callback); public void getPlatform(String session, AsyncCallback<String> callback); public void deleteFriends(String session, FriendInfoLite[] friend, AsyncCallback<Void> callback); public void addToIgnoreRequestList(String session, FriendInfoLite friend, AsyncCallback<Void> callback); public void getGtalkStatus(String session, AsyncCallback<String> callback); public void getAllTags(String session, AsyncCallback<FileTree> callback); public void getTags(String session, String inOneSwarmHash, AsyncCallback<FileTree> callback); public void setTags(String session, String inOneSwarmHash, String[] path, AsyncCallback<Void> callback); public void getSelf(String session, AsyncCallback<FriendInfoLite> callback); public void getUsersWithMessages(String session, AsyncCallback<HashMap<String, String[]>> callback); public void getUnreadMessageCounts(String session, AsyncCallback<HashMap<String, Integer>> callback); public void getMessagesForUser(String session, String base64PublicKey, boolean include_read, int limit, AsyncCallback<SerialChatMessage[]> callback); public void sendChatMessage(String session, String base64PublicKey, SerialChatMessage message, AsyncCallback<Boolean> callback); public void clearChatLog(String session, String base64PublicKey, AsyncCallback<Integer> callback); public void updateRemoteAccessIpFilter(String session, String selectedFilterType, String filterString, AsyncCallback<Void> callback); public void getBackendErrors(String session, AsyncCallback<ArrayList<BackendErrorReport>> callback); public void getDebugMessageLog(String session, String friendPublicKey, AsyncCallback<String> callback); public void getBase64HashesForOneSwarmHashes(String session, String[] inOneSwarmHashes, AsyncCallback<String[]> callback); public void getBase64HashesForBase32s(String session, String[] inBase32s, AsyncCallback<String[]> callback); public void createInvitation(String session, String name, boolean canSeeFileList, long maxAge, SecurityLevel securityLevel, AsyncCallback<FriendInvitationLite> callback); public void redeemInvitation(String session, FriendInvitationLite invitation, boolean testOnly, AsyncCallback<Void> callback); public void getSentFriendInvitations(String session, AsyncCallback<ArrayList<FriendInvitationLite>> callback); public void getRedeemedFriendInvitations(String session, AsyncCallback<ArrayList<FriendInvitationLite>> callback); public void updateFriendInvitations(String sessionID, FriendInvitationLite invitation, AsyncCallback<Void> asyncCallback); public void deleteFriendInvitations(String sessionID, ArrayList<FriendInvitationLite> invitations, AsyncCallback<Void> asyncCallback); public void copyTorrentInfoToMagnetLink(String sessionID, String[] torrentIDs, AsyncCallback<String> asyncCallback); public void refreshFileAssociations(String session, AsyncCallback<Void> callback); public void getLocales(String session, AsyncCallback<LocaleLite[]> callback); public void getFileInfo(String session, FileListLite file, boolean getMediaInfo, AsyncCallback<HashMap<String, String>> callback); public void performSpeedCheck(String session, double setWithFraction, AsyncCallback<BackendTask> callback); void applyDefaultSettings(String session, AsyncCallback<Void> callback); public void getNumberFriendsCount(String session, AsyncCallback<Integer> callback); void getNumberOnlineFriends(String session, AsyncCallback<Integer> callback); void publishSwarms(String session, TorrentInfo[] infos, String[] previewPaths, String[] comments, String[] categories, CommunityRecord toServer, AsyncCallback<BackendTask> callback); public void getCategoriesForCommunityServer(String sessionID, CommunityRecord selected, AsyncCallback<ArrayList<String>> asyncCallback); void triggerNatCheck(String sessionID, AsyncCallback<Void> callback); void getNatCheckResult(String sessionID, AsyncCallback<HashMap<String, String>> callback); public void fixPermissions(String sessionID, TorrentInfo torrent, boolean inFixAll, AsyncCallback<Void> asyncCallback); void isStreamingDownload(String session, String infohash, AsyncCallback<Boolean> callback); void setStreamingDownload(String session, String infohash, boolean streaming, AsyncCallback<Void> callback); void getMultiTorrentSourceTemp(String session, AsyncCallback<String> callback); void getClientServices(AsyncCallback<ArrayList<ClientServiceDTO>> callback); void getSharedServices(AsyncCallback<ArrayList<SharedServiceDTO>> callback); void saveClientServices(ArrayList<ClientServiceDTO> services, AsyncCallback<Void> callback); void saveSharedServices(ArrayList<SharedServiceDTO> services, AsyncCallback<Void> callback); void listFiles(String session, String string, AsyncCallback<FileInfo[]> callback); }