25 packages tagged with “VersaTul”
The VersaTul Extensions project provides a variety of methods for manipulating arrays, performing conversions and other common functionalities.
The VersaTul Configuration project enables the ability to get the values of the specified keys stored in the settings dictionary. Much like the DOTNET IConfiguration interface this configuration project provides a way to cleanly pass settings into an application. The VersaTul projects that needs settings are built on top of Configuration. However this project can be extended to be used in other custom projects as well.
VersaTul Pipeline Infrastructure offers a powerful and elegant solution for object processing and transformation. This project fully implements the Pipeline and Filter pattern in a generic and flexible manner, allowing you to efficiently apply a series of filters to convert objects into their desired state. Ideal for scenarios where complex processing sequences are needed, VersaTul Pipeline Infrastructure simplifies and enhances your development workflow with its intuitive design and robust capabilities.
The VersaTul Data MsSql project provides the ability to quickly create database access objects, usable on Microsoft SQL Server databases. This project is built on top of a combination of System.Data.Common and System.Data.SqlClient namespaces. These are used to provide the functionality to quickly call stored procedures or plain text sql queries, and map the result into data objects using the provided helper methods. The project also provides MsSql Bulk Copy functionality, which can be use to bulk insert data into a MsSQL Server databases.
The VersaTul Utilities project provides a variety of commonly used helper methods to help with the rapid developement process.
The VersaTul Data Sql project provides the ability to quickly create database access objects, usable on any suppporting SQL databases. This project is built on top of the System.Data.Common namespace and provides the functionality to quickly call stored procedures or plain text sql queries, then map the result into data objects using the provided helper methods.
The VersaTul Handler File project provides the functionality needed to control working with files on disk. Most notable are creating, reading, and deleting files. This project is a wrapper class around the System.IO.File namespace and works with the custom VersaTul FileInfo objects to read and write data to files.
The VersaTul Object Converters project provides the ability to convert objects into key/value pairs dictionary stores. For example, converters can be used to convert instance of classes into a dictionary representation of the data from the class. This package works with the Collection streamers package.
The VersaTul Logger File project provides the functionality needed to performing logging in a flat file. This project implements the ILogger interface from the VersaTul Logger project.
The VersaTul Display Attributes project enables the ability to provide meta-data to the export engine for outputting collections as files. This package works with the Collection streamers package. Attributes can be applied to the properties of a collection data type in order to manipulate the outputted data.
The VersaTul Task Scheduler project provides functionality to schedule events then listen to and react to those events. This is ideal for windows service type applications that may run tasks based on certain time or day. Events can be scheduled from seconds, minutes, hours, days and many more combinations.
The VersaTul Data FileReader is a small library that provides simple, testable file-reading helpers to produce IDataReader instances from common file formats. It focuses on CSV and plain text files and exposes a thin abstraction so callers can easily obtain forward-only readers that integrate with other data-processing or bulk-copy components.
The VersaTul Mailer project provides the functionality to send emails messages. This project uses the SMTP protocol to transmit e-mail to a mail receiver.
The VersaTul Compression project enables the ability to compress and decompress streams. This project is built around the DotNet System.IO.Compression classes. Using its inbuilt ZipStream class MemoryStreams can be quickly compressed into Archive Streams.
The VersaTul Data Contracts project provides generic interfaces that are supported throughout the Data manipulating projects in the VersaTul ecosystem. These tend to be more database-oriented projects. Developers who may want to change the underline implementation of these contracts can create their own implementation of such contract and supply it to the VersaTul project in which they require to change the behavior.
The VersaTul Caching project is designed to provide a simplfied caching interface with the ability to change the underlining caching engine easily and quickly. The default cache engine is built on top of the Microsoft Extensions Caching Memory class, which provides an in memory caching store. This implementation can be easily replaced using the interface provided.
The VersaTul EFCore project provides the ability to quickly create project specific database repositories running on Microsoft Entity Framework Core ORM. This project provides generic repository functionality that can be reused to create project specific repositories. CRUD operations are defined both Synchronous and Asynchronous methods.
The VersaTul Logger project provides all the common functionality used by all VersaTul loggers. This project provides the interfaces used in order to keep consistency across all the different logger apps, such as FileLogger, MailLogger, and WebLogger.
The VersaTul Logger Web project provides the functionality needed to performing logging to a web address or end point. This project implements the ILogger interface from the VersaTul Logger project.
The VersaTul Data Bulk project provides the ability to setup bulk coping functionality for copying data to and from different data sources. This project is designed to provide a set of common interfaces as well as implementation that can be used to build database or data source specific copiers.
The VersaTul Configuration default project enables the ability to quickly setup default settings for VersaTul projects.
The VersaTul Logger Mail project provides the functionality needed to performing logging to a email address or addresses. This project implements the ILogger interface from the VersaTul Logger project. There is also a dependency on the VersaTul Mailer project, which is used to send emails.
The VersaTul Data MongoDB project provides functionality for working with Mongo Databases. The project uses the repository design pattern to provide the functionality to Fetch, Add, Update, or Delete data.
The VersaTul Contracts project provides generic interfaces that are supported throughout the VersaTul ecosystem. Developers who may want to change the underline implementation of these contracts can create their own implementation of such contract and supply it to the VersaTul project in which they require to change the behavior.
The VersaTul Collection Streamers provides functionality that enables developers to quickly convert a collection of objects in memory into a data-reader that can be used for Bulk inserting data into a SQL Database, or be used to generate flat files. Developers can use the streamers to: 1. Convert a Collection to a Data-Reader. 2. Convert from a Data-Reader to other file formats such as CSV, TAB or Json. 3. Compress converted data into Zip files. 4. Transport the converted data via e-mail. The Streamers project also works with Display Attributes which is used to manipulate the properties on the objects in the collection such as formatting the data or renaming the property with a desired display name.