do not force the name as the alias (allow different default in the finder/streamlet) v_0
authorFrantišek Kučera <franta-hg@frantovo.cz>
Sat, 18 Jan 2020 16:41:59 +0100
branchv_0
changeset 44 dc5c210295d0
parent 43 bfc7e5d541c2
child 45 f466b4c7d9b1
do not force the name as the alias (allow different default in the finder/streamlet)
src/FileAttributeFinder.h
src/RequestedField.h
src/XattrAttributeFinder.h
streamlet-examples/__relpipe_in_filesystem_script_inode
streamlet-examples/__relpipe_in_filesystem_script_lines_count
streamlet-examples/__relpipe_in_filesystem_script_mime_type
--- 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
 }