blib/lib/WebService/Mattermost/V4/API/Resource/File.pm | |||
---|---|---|---|
Criterion | Covered | Total | % |
statement | 3 | 18 | 16.6 |
branch | n/a | ||
condition | n/a | ||
subroutine | 1 | 6 | 16.6 |
pod | 5 | 5 | 100.0 |
total | 9 | 29 | 31.0 |
line | stmt | bran | cond | sub | pod | time | code |
---|---|---|---|---|---|---|---|
1 | package WebService::Mattermost::V4::API::Resource::File; 2: 3: # ABSTRACT: Wrapped API methods for the file API endpoints. 4: 5: use Moo; 6: 7: extends 'WebService::Mattermost::V4::API::Resource'; 8: 9: ################################################################################ 10: 11: sub get { 12: my $self = shift; 13: my $file_id = shift; 14: 15: return $self->_get({ 16: endpoint => '%s', 17: ids => [ $file_id ], 18: view => 'Binary', 19: }); 20: } 21: 22: sub get_thumbnail { 23: my $self = shift; 24: my $file_id = shift; 25: 26: return $self->_get({ 27: endpoint => '%s/thumbnail', 28: ids => [ $file_id ], 29: }); 30: } 31: 32: sub get_preview { 33: my $self = shift; 34: my $file_id = shift; 35: 36: return $self->_get({ 37: endpoint => '%s/preview', 38: ids => [ $file_id ], 39: }); 40: } 41: 42: sub get_link { 43: my $self = shift; 44: my $file_id = shift; 45: 46: return $self->_get({ 47: endpoint => '%s/link', 48: ids => [ $file_id ], 49: }); 50: } 51: 52: sub get_metadata { 53: my $self = shift; 54: my $file_id = shift; 55: 56: return $self->_get({ 57: endpoint => '%s/info', 58: ids => [ $file_id ], 59: }); 60: } 61: 62: ################################################################################ 63: 64: 1; 65: 66: __END__ 67: 68: =pod 69: 70: =encoding UTF-8 71: 72: =head1 NAME 73: 74: WebService::Mattermost::V4::API::Resource::File - Wrapped API methods for the file API endpoints. 75: 76: =head1 VERSION 77: 78: version 0.28 79: 80: =head1 DESCRIPTION 81: 82: =head2 USAGE 83: 84: use WebService::Mattermost; 85: 86: my $mm = WebService::Mattermost->new({ 87: authenticate => 1, 88: username => 'me@somewhere.com', 89: password => 'hunter2', 90: base_url => 'https://my.mattermost.server.com/api/v4/', 91: }); 92: 93: my $resource = $mm->api->file; 94: 95: =head2 METHODS 96: 97: =over 4 98: 99: =item C<get()> 100: 101: Get basic information about a file. 102: 103: $resource->get('FILE_ID_HERE'); 104: 105: =item C<get_thumbnail()> 106: 107: Get a file's thumbnail 108: 109: $resource->get_thumbnail('FILE_ID_HERE'); 110: 111: =item C<get_preview()> 112: 113: Get a file's preview. 114: 115: $resource->get_preview('FILE_ID_HERE'); 116: 117: =item C<get_link()> 118: 119: Get a public link to a file. 120: 121: $resource->get_link('FILE_ID_HERE'); 122: 123: =item C<get_metadata()> 124: 125: Get information about a file. 126: 127: $resource->get_metadata('FILE_ID_HERE'); 128: 129: =back 130: 131: =head1 SEE ALSO 132: 133: =over 4 134: 135: =item L<Official Files documentation|https://api.mattermost.com/#tag/files> 136: 137: =back 138: 139: =head1 AUTHOR 140: 141: Mike Jones <mike@netsplit.org.uk> 142: 143: =head1 COPYRIGHT AND LICENSE 144: 145: This software is Copyright (c) 2020 by Mike Jones. 146: 147: This is free software, licensed under: 148: 149: The MIT (X11) License 150: 151: =cut 152: |