33 const std::string &source) {
34 const std::vector<std::string> sources{source};
39 const std::vector<std::string> &sources) {
40 if (sources.empty()) {
41 LOG(ERROR) <<
"FarReaderClass::Open: No files specified";
45 if (arc_type.empty()) {
46 LOG(ERROR) <<
"FarReaderClass::Open: File could not be opened: " 54 Apply<Operation<OpenFarReaderClassArgs>>(
"OpenFarReaderClass", arc_type,
56 return std::move(args.
retval);
67 const std::string &source,
const std::string &arc_type,
FarType type) {
71 Apply<Operation<CreateFarWriterClassArgs>>(
"CreateFarWriterClass", arc_type,
73 return std::move(args.
retval);
static std::unique_ptr< FarWriterClass > Create(const std::string &source, const std::string &arc_type, FarType type=FarType::DEFAULT)
std::pair< const std::string &, FarType > CreateFarWriterClassInnerArgs
REGISTER_FST_OPERATION(OpenFarReaderClass, StdArc, OpenFarReaderClassArgs)
std::string LoadArcTypeFromFar(const std::string &far_source)
void CreateFarWriterClass(CreateFarWriterClassArgs *args)
friend void OpenFarReaderClass(OpenFarReaderClassArgs *args)
static std::unique_ptr< FarReaderClass > Open(const std::string &source)