コード例 #1
0
 public static void Write(CollectObject objIn, string runId)
 {
     if (objIn != null && runId != null)
     {
         WriteQueue.Enqueue(new WriteObject(objIn, runId));
     }
 }
コード例 #2
0
 internal void HandleChange(CollectObject collectObject)
 {
     if (changeHandler != null)
     {
         changeHandler(collectObject);
     }
     else
     {
         Results.Push(collectObject);
     }
 }
コード例 #3
0
        public static void Write(CollectObject obj, string runId)
        {
            var cmd = new SqliteCommand(SQL_INSERT_COLLECT_RESULT, Connection, Transaction);

            cmd.Parameters.AddWithValue("@run_id", runId);
            cmd.Parameters.AddWithValue("@row_key", CryptoHelpers.CreateHash(JsonConvert.SerializeObject(obj)));
            cmd.Parameters.AddWithValue("@identity", obj.Identity);
            cmd.Parameters.AddWithValue("@serialized", JsonConvert.SerializeObject(obj));
            cmd.Parameters.AddWithValue("@result_type", obj.ResultType);
            cmd.ExecuteNonQuery();
        }
コード例 #4
0
        public static void Write(CollectObject colObj, string runId)
        {
            if (colObj != null && runId != null)
            {
                var objIn = new WriteObject(colObj, runId);

                if (objIn.Shard >= 0)
                {
                    Connections[objIn.Shard].WriteQueue.Enqueue(objIn);
                }
            }
        }
コード例 #5
0
        public static byte[] Dehydrate(CollectObject colObj)
        {
            if (colObj == null)
            {
                return(null);
            }

            switch (colObj)
            {
            case CertificateObject certificateObject:
                return(JsonSerializer.Serialize(certificateObject));

            case FileSystemObject fileSystemObject:
                return(JsonSerializer.Serialize(fileSystemObject));

            case OpenPortObject openPortObject:
                return(JsonSerializer.Serialize(openPortObject));

            case RegistryObject registryObject:
                return(JsonSerializer.Serialize(registryObject));

            case ServiceObject serviceObject:
                return(JsonSerializer.Serialize(serviceObject));

            case UserAccountObject userAccountObject:
                return(JsonSerializer.Serialize(userAccountObject));

            case GroupAccountObject groupAccountObject:
                return(JsonSerializer.Serialize(groupAccountObject));

            case FirewallObject firewallObject:
                return(JsonSerializer.Serialize(firewallObject));

            case ComObject comObject:
                return(JsonSerializer.Serialize(comObject));

            case EventLogObject eventLogObject:
                return(JsonSerializer.Serialize(eventLogObject));

            default:
                return(null);
            }
        }
コード例 #6
0
 /// <summary>
 /// Serialize an object with messagepack
 /// </summary>
 /// <param name="colObj">The object to serialize</param>
 /// <returns>The bytes of the serialized object</returns>
 public static string Dehydrate(CollectObject colObj)
 {
     return(JsonConvert.SerializeObject(colObj));
 }