remove unneeded utf8 declarations
[gitmo/MooseX-Storage.git] / lib / MooseX / Storage / Engine / IO / AtomicFile.pm
index 6c58228..c84c366 100644 (file)
@@ -1,21 +1,18 @@
-
 package MooseX::Storage::Engine::IO::AtomicFile;
 use Moose;
 
 use IO::AtomicFile;
 
-our $VERSION   = '0.02';
-our $AUTHORITY = 'cpan:STEVAN';
-
 extends 'MooseX::Storage::Engine::IO::File';
 
 sub store {
-       my ($self, $data) = @_;
-       my $fh = IO::AtomicFile->new($self->file, 'w')
-           || confess "Unable to open file (" . $self->file . ") for storing : $!";
-       print $fh $data;
-       $fh->close() 
-           || confess "Could not write atomic file (" . $self->file . ") because: $!";
+    my ($self, $data) = @_;
+    my $fh = IO::AtomicFile->new($self->file, 'w')
+        || confess "Unable to open file (" . $self->file . ") for storing : $!";
+    $fh->binmode(':utf8') if utf8::is_utf8($data);
+    print $fh $data;
+    $fh->close()
+        || confess "Could not write atomic file (" . $self->file . ") because: $!";
 }
 
 1;
@@ -54,7 +51,7 @@ This provides the actual means to store data to a file atomically.
 
 =head1 BUGS
 
-All complex software has bugs lurking in it, and this module is no 
+All complex software has bugs lurking in it, and this module is no
 exception. If you find a bug please either email me, or add the bug
 to cpan-RT.
 
@@ -66,7 +63,7 @@ Stevan Little E<lt>stevan.little@iinteractive.comE<gt>
 
 =head1 COPYRIGHT AND LICENSE
 
-Copyright 2007 by Infinity Interactive, Inc.
+Copyright 2007-2008 by Infinity Interactive, Inc.
 
 L<http://www.iinteractive.com>