2.3 Callbacks Example

by dimitrs_papadimitriou

HTML

<script src="https://rawgit.com/eu81273/jsfiddle-console/master/console.js"></script>
<script src="https://unpkg.com/[email protected]/bundles/rxjs.umd.min.js"></script>

JavaScript

var mockClientRepository = ({
    getById: (id, onFinished) =>
      setTimeout(() => {

        var client = [{ id: 1, name: 'rick', age: 29, employeeId: 1 },
        { id: 2, name: 'morty', age: 25, employeeId: 3 }]

          .find(client => client.id === id);
        onFinished(client)
      }, 1000)

  })

  var mockEmployeeRepository = ({
    getById: (id, onFinished) =>
      setTimeout(() => {

        var employee = [{ id: 1, name: 'jim', age: 29 },
        { id: 2, name: 'jane', age: 25 }]
          .find(employee => employee.id === id);

        onFinished(employee)
      }, 1000)

  })


  var assignedEmployee = (clientId, onFinished) => {
    mockClientRepository.getById(clientId, client => {
      if (client) {
        mockEmployeeRepository.getById(client.employeeId, employee => {
          onFinished(employee)
        });
      }
    });
  }