do not force the name as the alias (allow different default in the finder/streamlet)
--- a/src/FileAttributeFinder.h Fri Jan 17 14:07:33 2020 +0100
+++ b/src/FileAttributeFinder.h Sat Jan 18 16:41:59 2020 +0100
@@ -90,7 +90,7 @@
virtual void writeFieldOfExistingFile(RelationalWriter* writer, const string_t& relationName, const RequestedField& field) override {
if (field.group == RequestedField::GROUP_FILE) {
- for (string_t alias : field.getAliases()) {
+ for (string_t alias : field.getAliasesOrName()) {
if (field.name == FIELD_NAME) {
writer->writeAttribute(currentFile.filename().wstring());
} else if (field.name == FIELD_PATH_ORIGINAL) {
@@ -148,7 +148,7 @@
virtual vector<AttributeMetadata> toMetadata(RelationalWriter* writer, const string_t& relationName, const RequestedField& field) override {
if (field.group == RequestedField::GROUP_FILE) {
vector<AttributeMetadata> metadata;
- for (string_t alias : field.getAliases()) {
+ for (string_t alias : field.getAliasesOrName()) {
if (field.name == FIELD_SIZE) metadata.push_back(AttributeMetadata{alias, TypeId::INTEGER});
else metadata.push_back(AttributeMetadata{alias, TypeId::STRING});
}
--- a/src/RequestedField.h Fri Jan 17 14:07:33 2020 +0100
+++ b/src/RequestedField.h Sat Jan 18 16:41:59 2020 +0100
@@ -45,9 +45,16 @@
}
/**
+ * @return aliases (might be empty)
+ */
+ std::vector<string_t> getAliases() const {
+ return aliases;
+ }
+
+ /**
* @return aliases or vector with single item (name), if aliases are empty
*/
- std::vector<string_t> getAliases() const {
+ std::vector<string_t> getAliasesOrName() const {
if (aliases.empty()) return {name};
else return aliases;
}
--- a/src/XattrAttributeFinder.h Fri Jan 17 14:07:33 2020 +0100
+++ b/src/XattrAttributeFinder.h Sat Jan 18 16:41:59 2020 +0100
@@ -53,7 +53,7 @@
protected:
virtual void writeFieldOfExistingFile(RelationalWriter* writer, const string_t& relationName, const RequestedField& field) override {
- for (string_t alias : field.getAliases()) {
+ for (string_t alias : field.getAliasesOrName()) {
// TODO: support also other namespaces through CLI --option namespace someOtherNS
string_t xattrName = L"user." + field.name;
if (field.group == RequestedField::GROUP_XATTR) writer->writeAttribute(getXattr(currentFile, xattrName));
@@ -65,7 +65,7 @@
virtual vector<AttributeMetadata> toMetadata(RelationalWriter* writer, const string_t& relationName, const RequestedField& field) override {
if (field.group == RequestedField::GROUP_XATTR) {
vector<AttributeMetadata> metadata;
- for (string_t alias : field.getAliases()) metadata.push_back(AttributeMetadata{alias, TypeId::STRING});
+ for (string_t alias : field.getAliasesOrName()) metadata.push_back(AttributeMetadata{alias, TypeId::STRING});
return metadata;
} else {
return {};
--- a/streamlet-examples/__relpipe_in_filesystem_script_inode Fri Jan 17 14:07:33 2020 +0100
+++ b/streamlet-examples/__relpipe_in_filesystem_script_inode Sat Jan 18 16:41:59 2020 +0100
@@ -22,7 +22,7 @@
. "$(dirname $0)/streamlet-common.sh"
processMessage_WAITING_FOR_OUTPUT_ATTRIBUTES_METADATA() {
- send OUTPUT_ATTRIBUTE_METADATA "${outputAttributeAliases[0]}" "integer"
+ send OUTPUT_ATTRIBUTE_METADATA "${outputAttributeAliases[0]-inode}" "integer"
send WAITING_FOR_INPUT_ATTRIBUTES
}
--- a/streamlet-examples/__relpipe_in_filesystem_script_lines_count Fri Jan 17 14:07:33 2020 +0100
+++ b/streamlet-examples/__relpipe_in_filesystem_script_lines_count Sat Jan 18 16:41:59 2020 +0100
@@ -24,7 +24,7 @@
. "$(dirname $0)/streamlet-common.sh"
processMessage_WAITING_FOR_OUTPUT_ATTRIBUTES_METADATA() {
- send OUTPUT_ATTRIBUTE_METADATA "${outputAttributeAliases[0]}" "integer"
+ send OUTPUT_ATTRIBUTE_METADATA "${outputAttributeAliases[0]-lines_count}" "integer"
send WAITING_FOR_INPUT_ATTRIBUTES
}
--- a/streamlet-examples/__relpipe_in_filesystem_script_mime_type Fri Jan 17 14:07:33 2020 +0100
+++ b/streamlet-examples/__relpipe_in_filesystem_script_mime_type Sat Jan 18 16:41:59 2020 +0100
@@ -23,7 +23,7 @@
. "$(dirname $0)/streamlet-common.sh"
processMessage_WAITING_FOR_OUTPUT_ATTRIBUTES_METADATA() {
- send OUTPUT_ATTRIBUTE_METADATA "${outputAttributeAliases[0]}" "string"
+ send OUTPUT_ATTRIBUTE_METADATA "${outputAttributeAliases[0]-mime_type}" "string"
send WAITING_FOR_INPUT_ATTRIBUTES
}