|
@@ -4,10 +4,21 @@ public static int main(string[] args) {
|
|
|
|
|
|
var creds = new Ppub.CollectionMemberCredentials.from_string("PYuKgL7SdQYc2Kf6UGG9pCE58m27qrYnCaM45cnxs64=:JbJ6OoNn2KcGX+Tk5C/hotGZCoHOkTNbadUrlk6aCRs=:tL+557eP7kE6ObAW0b5RjvYyU8Dl3oVTOvYA7LAwSdI9i4qAvtJ1BhzYp/pQYb2kITnybbuqticJozjlyfGzrg==:AJbFO6n/cOuD7kk+wu7DmQ58w6z0G3HsukVmIzxGaUM=");
|
|
|
|
|
|
+ var collection_id = new Invercargill.BinaryData.from_base64("y8ibw54A93LDBKbgWm1EJ/WlbOkGX60DK+qp2lBHpjk=");
|
|
|
+
|
|
|
var upload_file = File.new_for_path(args[1]);
|
|
|
var file_size = upload_file.query_info("*", FileQueryInfoFlags.NONE).get_size();
|
|
|
var client = new Pprf.HttpPprfClient("http://localhost:8080/test.php");
|
|
|
var file_name = upload_file.get_basename();
|
|
|
+
|
|
|
+ var collection = client.get_collection(collection_id);
|
|
|
+ var member = Pprf.MemberIdentity.get_usable_identities(Invercargill.single(creds), collection).first_or_default();
|
|
|
+ if(member == null) {
|
|
|
+ print("No usable identity\n");
|
|
|
+ return -2;
|
|
|
+ }
|
|
|
+
|
|
|
+ print(@"Acting as $(member.name)\n");
|
|
|
|
|
|
// print("Regisering name\n");
|
|
|
// var rmessage = new Pprf.Messages.RegisterName();
|
|
@@ -23,9 +34,9 @@ public static int main(string[] args) {
|
|
|
|
|
|
print("Beginning upload\n");
|
|
|
var message = new Pprf.Messages.BeginUpload();
|
|
|
- message.collection_id = new Invercargill.BinaryData.from_base64("ctA1tlLAk1hZgEvHcstCJWM+0OkdT0tYdIUeNmRvC5o=");
|
|
|
+ message.collection_id = collection_id;
|
|
|
message.file_size = file_size;
|
|
|
- message.member_name = "billy";
|
|
|
+ message.member_name = member.name;
|
|
|
|
|
|
var response = client.send_message(message);
|
|
|
if(response is Pprf.Messages.Failure) {
|
|
@@ -51,7 +62,7 @@ public static int main(string[] args) {
|
|
|
digest.length = (int)dig_len;
|
|
|
|
|
|
var umessage = new Pprf.Messages.Upload();
|
|
|
- umessage.collection_id = new Invercargill.BinaryData.from_base64("ctA1tlLAk1hZgEvHcstCJWM+0OkdT0tYdIUeNmRvC5o=");
|
|
|
+ umessage.collection_id = collection_id;
|
|
|
umessage.offset = offset;
|
|
|
umessage.upload_chunk = new Pprf.Messages.BytesMessageBody(data);
|
|
|
umessage.authenticate(session.session_authentication, digest, creds);
|
|
@@ -72,17 +83,31 @@ public static int main(string[] args) {
|
|
|
digest.length = (int)dig_len;
|
|
|
|
|
|
var fmessage = new Pprf.Messages.FinaliseUpload();
|
|
|
- fmessage.collection_id = new Invercargill.BinaryData.from_base64("ctA1tlLAk1hZgEvHcstCJWM+0OkdT0tYdIUeNmRvC5o=");
|
|
|
+ fmessage.collection_id = collection_id;
|
|
|
fmessage.destination = file_name;
|
|
|
fmessage.authenticate(session.session_authentication, digest, creds);
|
|
|
- fmessage.bspatch_old_checksum = new Invercargill.BinaryData.from_base64("2+1VxEx6bMUfJ0g0b3vnJwDFVf/acGG5IXENvb3ElCFU9dFXi+6muFb2GXUVA8B5+PV2AWiOEKhD3RqNTYwBpw==").to_array();
|
|
|
- fmessage.flags = Pprf.Messages.FinaliseUploadFlags.BSPATCH | Pprf.Messages.FinaliseUploadFlags.OVERWRITE_DESTINATION;
|
|
|
+ // fmessage.bspatch_old_checksum = new Invercargill.BinaryData.from_base64("2+1VxEx6bMUfJ0g0b3vnJwDFVf/acGG5IXENvb3ElCFU9dFXi+6muFb2GXUVA8B5+PV2AWiOEKhD3RqNTYwBpw==").to_array();
|
|
|
+ fmessage.flags = Pprf.Messages.FinaliseUploadFlags.OVERWRITE_DESTINATION;
|
|
|
|
|
|
response = client.send_message(fmessage);
|
|
|
if(response is Pprf.Messages.Failure) {
|
|
|
print(@"Failure $(response.code): $(response.message)\n");
|
|
|
return -1;
|
|
|
}
|
|
|
+
|
|
|
+ print("Publishing publication\n");
|
|
|
+
|
|
|
+ var publication = new Ppub.CollectionPublication(file_name, new DateTime.now_local(), member.name, creds, digest);
|
|
|
+
|
|
|
+ var pmessage = new Pprf.Messages.Publish();
|
|
|
+ pmessage.collection_id = collection_id;
|
|
|
+ pmessage.publication_string = publication.to_string();
|
|
|
+
|
|
|
+ response = client.send_authenticated_message(pmessage, member);
|
|
|
+ if(response is Pprf.Messages.Failure) {
|
|
|
+ print(@"Failure $(response.code): $(response.message)\n");
|
|
|
+ return -1;
|
|
|
+ }
|
|
|
|
|
|
print("Done\n");
|
|
|
return 0;
|