the idea is very good, but there would be much less changes if this method was implemented as a public method in the Trade::ShipmentsExport class; this way it would be inherited by all exporter classes and you wouldn't have to move resource_name out of the provate scope