Git Product home page Git Product logo

qejson's Introduction

QEJson

It is a JSON serialization library of QE Framework. It allows you to serialize QObjects into JSON format using the object's properties and annotations.

badge

How to use it

It uses the same annotations that are available for QEOrm. Following the example in QEOrm, to get an object of class 'Book' serilized to JSON:

	Book b1;
	// ... fill b1 properties.

	qe::json::SerializedItem target;
	QEJson::instance().save( &book, &target);

	// Get QJson result...
	QJsonObject jsonB1 = target.value().toObject();


	// Loading an object from QJsonObject.
	Book b2;
	QEJson::instance().load( &target, &b2);

You can see more examples into 'test' folder.

Installation

The easiest way to use this library in your code is by Conan Package Manager. Please use the project setup that you can find in QEJson/1.0.0 Conan.

If you use CMake, steps after adding this dependency to your "conanfile.py" are as usual:

	$~/yourProject > mkdir build
	$~/yourProject > cd build
	$~/yourProject/build > conan install -s build_type=debug .. 
	$~/yourProject/build > cmake -DCMAKE_BUILD_TYPE=Debug  .. 
	$~/yourProject/build > cmake --build .

Versioning

This library uses Semantic Versioning and internal private implementation to provide a long-term, stable, and reusable binaries.

License

This license follows the dual-license pattern that Qt is currently using. A LGPL 3.0 license for projects that do not need commercial support, and another one, Commercial license for rest of cases.

You can find a brief comparison between both licenses in the below table:

License types LGPLv3 Commercial
Community Support Yes Yes
Official Support Helpdesk No Yes
Keep your application private No Yes
Possible to keep your application private with dynamic linking Yes Yes
No need to provide a relinking mechanism for QE Framework
(can always use static linking)
No Yes
No need to provide a copy of license and explicitly
acknowledge the use of QE
No Yes
No need to make copy of the QE Framework source code
available for customers
No Yes
Full rights to proprietary QE source code modifications No Yes
Enforce DRM See LGPLv3 FAQ Yes
Enforce software patents See LGPLv3 FAQ Yes

qejson's People

Contributors

fmiguelgarcia avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.