diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..73f69e0
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
+# Editor-based HTTP Client requests
+/httpRequests/
diff --git a/.idea/FCPv2.iml b/.idea/FCPv2.iml
new file mode 100644
index 0000000..c254557
--- /dev/null
+++ b/.idea/FCPv2.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..ace9a15
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/types/client/fcp_types.rs b/src/types/client/fcp_types.rs
index 83bb71e..8be5941 100644
--- a/src/types/client/fcp_types.rs
+++ b/src/types/client/fcp_types.rs
@@ -452,6 +452,7 @@ fn is_client_put_converting() {
);
assert_eq!(fin, input.convert());
}
+
pub struct ClientGet {
message_name: String,
ignore_ds: Option,
@@ -460,6 +461,7 @@ pub struct ClientGet {
identifier: String,
verbosity: Option,
max_size: Option,
+ max_temp_size: Option,
max_retries: Option,
priority_class: Option,
persistence: Option,
@@ -472,7 +474,79 @@ pub struct ClientGet {
filename: Option>,
temp_filename: Option>,
real_time_flag: Option,
- initial_metadata_data_length: u64,
+ initial_metadata_data_length: Option,
+}
+
+/*
+ClientGet
+IgnoreDS=false
+DSOnly=false
+URI=KSK@sample.txt
+Identifier=Request Number One
+Verbosity=0
+ReturnType=direct
+MaxSize=100
+MaxTempSize=1000
+MaxRetries=100
+PriorityClass=1
+Persistence=reboot
+ClientToken=hello
+Global=false
+BinaryBlob=false
+FilterData=true
+EndMessage
+*/
+
+impl FcpRequest for ClientGet {
+ fn convert(&self) -> String {
+ unimplemented!();
+ format!(
+ "ClientGet\n\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ {}\
+ EndMessage\n\n",
+ to_fcp_unwrap("IgnoreDS=", &self.ignore_ds, "\n"),
+ to_fcp_unwrap("DSonly=", &self.ds_only, "\n"),
+ format!("URI={}\n", &self.uri),
+ format!("Identifier={}\n", &self.identifier),
+ to_fcp_unwrap("Verbosity=", &self.verbosity, "\n"),
+ to_fcp_unwrap("ReturnType=", &self.return_type, "\n"),
+ to_fcp_unwrap("MaxSize=", &self.max_size, "\n"),
+ to_fcp_unwrap("MaxTempSize=", &self.max_temp_size, "\n"),
+ to_fcp_unwrap("MaxRetries=", &self.max_retries, "\n"),
+ to_fcp_unwrap("PriorityClass=", &self.priority_class, "\n"),
+ to_fcp_unwrap("Persistence=", &self.persistence, "\n"),
+ to_fcp_unwrap("ClientToken=", &self.client_token, "\n"),
+ to_fcp_unwrap("Global=", &self.global, "\n"),
+ to_fcp_unwrap("BinaryBlob=", &self.binary_blob, "\n"),
+ to_fcp_unwrap("FilterData=", &self.filter_data, "\n"),
+ to_fcp_unwrap("AllowedMIMETypes =", &self.allowed_mime_types, "\n"),
+ to_fcp_unwrap("Filename=", &self.filename, "\n"),
+ to_fcp_unwrap("RealTimeFlag=", &self.real_time_flag, "\n"),
+ to_fcp_unwrap(
+ "InitialMetadata.DataLength=",
+ &self.initial_metadata_data_length,
+ "\n"
+ ),
+ )
+ }
}
pub struct Disconnect {
diff --git a/src/types/client/types.rs b/src/types/client/types.rs
index 9a19c92..e9c637d 100644
--- a/src/types/client/types.rs
+++ b/src/types/client/types.rs
@@ -68,6 +68,12 @@ pub enum VerbosityGet {
ExpectedDataLength,
}
+impl FcpRequest for VerbosityGet {
+ fn convert(&self) -> String {
+ unimplemented!();
+ }
+}
+
pub enum Retry {
None,
Forever,
@@ -154,10 +160,32 @@ pub enum ReturnType {
Disk,
}
+impl FcpRequest for ReturnType {
+ fn convert(&self) -> String {
+ unimplemented!();
+ }
+}
+
pub enum NumOrNone {
None,
Num(u32),
}
+impl FcpRequest for NumOrNone {
+ fn convert(&self) -> String {
+ unimplemented!();
+ }
+}
+
+impl FcpRequest for Vec {
+ fn convert(&self) -> String {
+ unimplemented!();
+ }
+}
+impl FcpRequest for Box {
+ fn convert(&self) -> String {
+ unimplemented!();
+ }
+}
pub enum Priority {
A, // 0
@@ -204,7 +232,11 @@ impl FcpRequest for i64 {
self.to_string()
}
}
-
+impl FcpRequest for u64 {
+ fn convert(&self) -> String {
+ self.to_string()
+ }
+}
impl FcpRequest for String {
fn convert(&self) -> String {
self.to_string()