private Metadata createMetadata(Message message, FileStream fileCsv, Boolean single)
        {
            if (!single && fileCsv == null)
            {
                return(null);
            }

            DateTime date = DateTime.Now;

            DataPerson oPerson = new DataPerson
            {
                docType = this.config.docType,
                doc     = this.config.doc,
                name    = this.config.name
            };

            DataApp oApp = new DataApp
            {
                name     = this.config.appName,
                clientId = this.config.clientId
            };

            Metadata metadata = new Metadata();

            metadata.issuer      = oPerson;
            metadata.application = oApp;
            metadata.subject     = message.subject;
            metadata.tag         = message.tag;

            if (single)
            {
                String hashMessage = String.Concat(message.subject, message.message);
                var    crypt       = new System.Security.Cryptography.SHA256Managed();
                var    hash        = new System.Text.StringBuilder();
                byte[] crypto      = crypt.ComputeHash(Encoding.UTF8.GetBytes(hashMessage));
                foreach (byte theByte in crypto)
                {
                    hash.Append(theByte.ToString("x2"));
                }

                metadata.checksum = hash.ToString();
                metadata.quantity = 1;
            }
            else
            {
                Metadata metadataChecksum = getChecksum(message, fileCsv);

                if (metadataChecksum == null)
                {
                    return(null);
                }

                metadata.checksum = metadataChecksum.checksum;
                metadata.quantity = metadataChecksum.quantity;
            }

            return(metadata);
        }
Exemplo n.º 2
0
 public ApplicationPerson(DataPerson dataPerson)
 {
     _dataPerson = dataPerson;
 }