X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FClipboard%2FBase.pm;h=fc0a16a1ff67574a7f8219d2741059695036e684;hb=d4608fb4eff9392728d1287de4df3e865ebe7f6e;hp=8b7f92a6449878dbd9449304c590be9f96b84cd3;hpb=c805dfd964cc6b4d24868b1835548024363e1f0f;p=kivitendo-erp.git diff --git a/SL/Clipboard/Base.pm b/SL/Clipboard/Base.pm index 8b7f92a64..fc0a16a1f 100644 --- a/SL/Clipboard/Base.pm +++ b/SL/Clipboard/Base.pm @@ -69,6 +69,13 @@ sub _fix_tree { } } +sub _binary_column_names { + my ($self, $class) = @_; + return map { $_->name } + grep { ref($_) =~ m/Pg::Bytea$/i } + @{ $class->meta->columns }; +} + 1; __END__ @@ -173,13 +180,13 @@ L. =item C -Converts the dumped representation back to an Rose::DB::Object +Converts the dumped representation back to a Rose::DB::Object instance. Several columns of the newly created object are cleared by C itself: the primary key columns (if any) and the columns C and C (if the object has such columns). This function should not be overwritten by sub-classes. Instead, -functions can overwrite C<_fix_object> which can be used for sanitzing +functions can overwrite C<_fix_object> which can be used for sanitizing the newly created object before handing it back to the caller. =item C @@ -187,6 +194,12 @@ the newly created object before handing it back to the caller. Returns the actual clipped type (e.g. C). This is derived from the actual class name of C<$self>. +=item C<_binary_column_names $class> + +Returns an array of column names that have a binary type. Useful for +sub-classes which need to encode binary content in Base64 during +C. + =item C<_fix_object $object> This function is called by L before the object is passed