public CommercioDoc(String senderDid,
                            List <String> recipientDids,
                            String uuid,
                            CommercioDocMetadata metadata,
                            String contentUri                         = null,
                            CommercioDocChecksum checksum             = null,
                            CommercioDocEncryptionData encryptionData = null,
                            CommercioDoSign doSign                    = null)
        {
            Trace.Assert(senderDid != null);
            Trace.Assert(recipientDids != null);
            Trace.Assert(recipientDids.Count > 0);
            Trace.Assert(uuid != null);
            Trace.Assert(metadata != null);
            // Trace.Assert(contentUri != null); Removed - conflict with opt param

            //Check if contenturi is valorize 15/07/2021 Luigi Arena test se contenturi è valorizzato
            if (!string.IsNullOrEmpty(contentUri))
            {
                Trace.Assert(contentUri.Length <= 512, "metadata.content_uri must have a valid length");
            }


            this.uuid           = uuid;
            this.senderDid      = senderDid;
            this.recipientDids  = recipientDids;
            this.contentUri     = contentUri;
            this.metadata       = metadata;
            this.checksum       = checksum;
            this.encryptionData = encryptionData;
            this.doSign         = doSign;
        }
 public CommercioDoc(String senderDid,
                     List<String> recipientDids,
                     String uuid,
                     CommercioDocMetadata metadata,
                     String contentUri = null,
                     CommercioDocChecksum checksum = null,
                     CommercioDocEncryptionData encryptionData = null,
                     CommercioDoSign doSign = null)
 {
     Trace.Assert(senderDid != null);
     Trace.Assert(recipientDids != null);
     Trace.Assert(recipientDids.Count > 0);
     Trace.Assert(uuid != null);
     Trace.Assert(metadata != null);
     // Trace.Assert(contentUri != null); Removed - conflict with opt param
     this.uuid = uuid;
     this.senderDid = senderDid;
     this.recipientDids = recipientDids;
     this.contentUri = contentUri;
     this.metadata = metadata;
     this.checksum = checksum;
     this.encryptionData = encryptionData;
     this.doSign = doSign;
 }