System Runtime

System Runtime

  • Languages iconENGLISH
    • Română
    • Help Translate
  • SUPPORT
  • GITHUB

›Examples

Introduction

  • What is System Runtime ?
  • System Runtime architecture
  • What is Design First ?
  • Overview

Guides

  • Quick Start
  • How to install System Runtime
  • Design your model
  • Create components
  • Manage your components
  • Bundle your system
  • Extend System Runtime
  • Go deeper

Examples

  • A basic "hello world"
  • Create a bundle
  • Install a bundle client-side
  • Install a bundle in HTML
  • Install a bundle server-side
  • Package a bundle
  • Create a component
  • Create new types
  • Create a one to one relationship
  • Create a one to many relationship
  • Navigate through the model
  • Inheritance between components
  • Listen to a change of state of a component
  • Use System Runtime NoSQL Database
  • Object-Document Mapper in action
  • Use System Runtime core apis
  • Use System Runtime history apis
  • Quick Start example

APIS

  • Component Class
  • runtime Component
  • metamodel Component
  • logger Component
  • db Component
  • history Component
  • Document Collection

About

  • Who is behind System Runtime ?
  • License

Use System Runtime history apis

To use System Runtime history apis, you just have to require the history component. You will be able to go back / forward into the stack of modifications made to the system.

// create the system
const system = runtime.system('example18');

// define a class
const metamodel = runtime.require('metamodel');

metamodel.schema('Person', {
  'firstName': 'property'
});

metamodel.create();

const Person = runtime.require('Person');

// create a component
new Person({
  '_id': 'luke',
  firstName: 'luke'
});

system.on('start', () => {
  // get the component
  const luke = this.require('luke');

  // get history component
  const history = this.require('history');

  // start historization of all modifications made to the system
  history.start();

  luke.firstName('lucky');

  // we will undo from the last modification made to the system
  history.from(-1);

  // undo last modification
  history.back();

  // show the name of the component, 'luke'
  console.log(luke.firstName());

  // redo last modification
  history.forward();

  // show the name of the component, 'lucky'
  console.log(luke.firstName());

  // stop historization of all modifications made to the system
  history.stop();
});

// run the system
system.start()

Version compatibility

Remember that the example works both on server and browser.

← Use System Runtime core apisQuick Start example →
System Runtime is distributed under Apache License 2.0 - Copyright © 2024 Erwan Carriou