public void StartBlobProcessing(Func <string, List <string>, Task> messagesHandler)
        {
            _messagesHandler = messagesHandler;
            _objectsData     = new Dictionary <string, List <string> >();

            if (_type == null)
            {
                _type          = _processingTypeResolver.ResolveProcessingTypeAsync().GetAwaiter().GetResult();
                _isValidMethod = _type.GetMethod("IsValid", new Type[0]);
            }
        }
        public TablesStructure GetTablesStructure()
        {
            if (_type == null)
            {
                _type = _processingTypeResolver.ResolveProcessingTypeAsync().GetAwaiter().GetResult();
            }

            var result = new TablesStructure {
                Tables = new List <TableStructure>()
            };

            AddStructureLevel(
                result,
                _type,
                null,
                null,
                null);

            return(result);
        }