---
name: "Mango::GridFS::Writer"
section: "3pm"
platform: "linux"
package: "libmango-perl"
version: "1.30-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Mango::GridFS::Writer"
---

# Mango::GridFS::Writer(3pm)

GridFS writer

## NAME

Mango::GridFS::Writer - GridFS writer

## SYNOPSIS

```
  use Mango::GridFS::Writer;
  my $writer = Mango::GridFS::Writer->new(gridfs => $gridfs);
```

## DESCRIPTION

Mango::GridFS::Writer writes files to GridFS.

## ATTRIBUTES

Mango::GridFS::Writer implements the following attributes.

### chunk\_size

```
  my $size = $writer->chunk_size;
  $writer  = $writer->chunk_size(1024);
```

Chunk size in bytes, defaults to `261120` (255KB).

### content\_type

```
  my $type = $writer->content_type;
  $writer  = $writer->content_type('text/plain');
```

Content type of file.

### filename

```
  my $name = $writer->filename;
  $writer  = $writer->filename('foo.txt');
```

Name of file.

### gridfs

```
  my $gridfs = $writer->gridfs;
  $writer    = $writer->gridfs(Mango::GridFS->new);
```

Mango::GridFS object this writer belongs to.

### metadata

```
  my $data = $writer->metadata;
  $writer  = $writer->metadata({foo => 'bar'});
```

Additional information.

## METHODS

Mango::GridFS::Writer inherits all methods from Mojo::Base and implements the following new ones.

### close

```
  my $oid = $writer->close;
```

Close file. You can also append a callback to perform operation non-blocking.

```
  $writer->close(sub {
    my ($writer, $err, $oid) = @_;
    ...
  });
  Mojo::IOLoop->start unless Mojo::IOLoop->is_running;
```

### is\_closed

```
  my $success = $writer->is_closed;
```

Check if file has been closed.

### write

```
  $writer = $writer->write('hello world!');
```

Write chunk. You can also append a callback to perform operation non-blocking.

```
  $writer->write('hello world!' => sub {
    my ($writer, $err) = @_;
    ...
  });
  Mojo::IOLoop->start unless Mojo::IOLoop->is_running;
```

## SEE ALSO

Mango, Mojolicious::Guides, \<http://mojolicio.us\>.
