1 // Copyright 2015 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 module mojo.test.versioning; 6 7 // versioning_test_service.mojom and versioning_test_client.mojom contain 8 // different versions of Mojom definitions for a fictitious human resource 9 // management system. They are used to test the versioning mechanism. 10 11 enum Department { 12 SALES, 13 DEV 14 }; 15 16 struct Employee { 17 uint64 employee_id; 18 string name; 19 Department department; 20 }; 21 22 interface HumanResourceDatabase { 23 AddEmployee(Employee employee) => (bool success); 24 25 QueryEmployee(uint64 id, [MinVersion=1] bool retrieve_finger_print) 26 => (Employee? employee, [MinVersion=1] array<uint8>? finger_print); 27 28 [MinVersion=1] 29 AttachFingerPrint(uint64 id, array<uint8> finger_print) 30 => (bool success); 31 32 [MinVersion=2] 33 ListEmployeeIds() => (array<uint64>? ids); 34 }; 35