Merge pull request #270 from GetStream/add-attachment-delete-methods
[LLC -> AttachmentFileUploader] Add remaining delete methods
This commit is contained in:
@@ -480,17 +480,19 @@ class Channel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Delete a file from this channel
|
/// Delete a file from this channel
|
||||||
Future<EmptyResponse> deleteFile(String url) async {
|
Future<EmptyResponse> deleteFile(
|
||||||
final response = await _client
|
String url, {
|
||||||
.delete('$_channelURL/file', queryParameters: {'url': url});
|
CancelToken cancelToken,
|
||||||
return _client.decode(response.data, EmptyResponse.fromJson);
|
}) {
|
||||||
|
return _client.deleteFile(url, id, type, cancelToken: cancelToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Delete an image from this channel
|
/// Delete an image from this channel
|
||||||
Future<EmptyResponse> deleteImage(String url) async {
|
Future<EmptyResponse> deleteImage(
|
||||||
final response = await _client
|
String url, {
|
||||||
.delete('$_channelURL/image', queryParameters: {'url': url});
|
CancelToken cancelToken,
|
||||||
return _client.decode(response.data, EmptyResponse.fromJson);
|
}) {
|
||||||
|
return _client.deleteImage(url, id, type, cancelToken: cancelToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Send an event on this channel
|
/// Send an event on this channel
|
||||||
|
|||||||
@@ -31,6 +31,28 @@ abstract class AttachmentFileUploader {
|
|||||||
ProgressCallback onSendProgress,
|
ProgressCallback onSendProgress,
|
||||||
CancelToken cancelToken,
|
CancelToken cancelToken,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
/// Deletes a image using its [url] from the given channel.
|
||||||
|
/// Returns [EmptyResponse] once deleted successfully.
|
||||||
|
///
|
||||||
|
/// Optionally, cancel the request using [cancelToken]
|
||||||
|
Future<EmptyResponse> deleteImage(
|
||||||
|
String url,
|
||||||
|
String channelId,
|
||||||
|
String channelType, {
|
||||||
|
CancelToken cancelToken,
|
||||||
|
});
|
||||||
|
|
||||||
|
/// Deletes a file using its [url] from the given channel.
|
||||||
|
/// Returns [EmptyResponse] once deleted successfully.
|
||||||
|
///
|
||||||
|
/// Optionally, cancel the request using [cancelToken]
|
||||||
|
Future<EmptyResponse> deleteFile(
|
||||||
|
String url,
|
||||||
|
String channelId,
|
||||||
|
String channelType, {
|
||||||
|
CancelToken cancelToken,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Stream's default implementation of [AttachmentFileUploader]
|
/// Stream's default implementation of [AttachmentFileUploader]
|
||||||
@@ -89,4 +111,34 @@ class StreamAttachmentFileUploader implements AttachmentFileUploader {
|
|||||||
);
|
);
|
||||||
return _client.decode(response.data, SendFileResponse.fromJson);
|
return _client.decode(response.data, SendFileResponse.fromJson);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<EmptyResponse> deleteImage(
|
||||||
|
String url,
|
||||||
|
String channelId,
|
||||||
|
String channelType, {
|
||||||
|
CancelToken cancelToken,
|
||||||
|
}) async {
|
||||||
|
final response = await _client.delete(
|
||||||
|
'/channels/$channelType/$channelId/image',
|
||||||
|
queryParameters: {'url': url},
|
||||||
|
cancelToken: cancelToken,
|
||||||
|
);
|
||||||
|
return _client.decode(response.data, EmptyResponse.fromJson);
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<EmptyResponse> deleteFile(
|
||||||
|
String url,
|
||||||
|
String channelId,
|
||||||
|
String channelType, {
|
||||||
|
CancelToken cancelToken,
|
||||||
|
}) async {
|
||||||
|
final response = await _client.delete(
|
||||||
|
'/channels/$channelType/$channelId/file',
|
||||||
|
queryParameters: {'url': url},
|
||||||
|
cancelToken: cancelToken,
|
||||||
|
);
|
||||||
|
return _client.decode(response.data, EmptyResponse.fromJson);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -822,10 +822,14 @@ class StreamChatClient {
|
|||||||
Future<Response<String>> delete(
|
Future<Response<String>> delete(
|
||||||
String path, {
|
String path, {
|
||||||
Map<String, dynamic> queryParameters,
|
Map<String, dynamic> queryParameters,
|
||||||
|
CancelToken cancelToken,
|
||||||
}) async {
|
}) async {
|
||||||
try {
|
try {
|
||||||
final response = await httpClient.delete<String>(path,
|
final response = await httpClient.delete<String>(
|
||||||
queryParameters: queryParameters);
|
path,
|
||||||
|
queryParameters: queryParameters,
|
||||||
|
cancelToken: cancelToken,
|
||||||
|
);
|
||||||
return response;
|
return response;
|
||||||
} on DioError catch (error) {
|
} on DioError catch (error) {
|
||||||
throw _parseError(error);
|
throw _parseError(error);
|
||||||
@@ -1076,6 +1080,36 @@ class StreamChatClient {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Delete a file from this channel
|
||||||
|
Future<EmptyResponse> deleteFile(
|
||||||
|
String url,
|
||||||
|
String channelId,
|
||||||
|
String channelType, {
|
||||||
|
CancelToken cancelToken,
|
||||||
|
}) {
|
||||||
|
return attachmentFileUploader.deleteFile(
|
||||||
|
url,
|
||||||
|
channelId,
|
||||||
|
channelType,
|
||||||
|
cancelToken: cancelToken,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Delete an image from this channel
|
||||||
|
Future<EmptyResponse> deleteImage(
|
||||||
|
String url,
|
||||||
|
String channelId,
|
||||||
|
String channelType, {
|
||||||
|
CancelToken cancelToken,
|
||||||
|
}) {
|
||||||
|
return attachmentFileUploader.deleteImage(
|
||||||
|
url,
|
||||||
|
channelId,
|
||||||
|
channelType,
|
||||||
|
cancelToken: cancelToken,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/// Add a device for Push Notifications.
|
/// Add a device for Push Notifications.
|
||||||
Future<EmptyResponse> addDevice(String id, PushProvider pushProvider) async {
|
Future<EmptyResponse> addDevice(String id, PushProvider pushProvider) async {
|
||||||
final response = await post('/devices', data: {
|
final response = await post('/devices', data: {
|
||||||
|
|||||||
Reference in New Issue
Block a user