Car

Car.java
01/* Copyright (C) 2004 - 2008 db4objects Inc. http://www.db4o.com */ 02package com.db4odoc.tp.rollback; 03 04import com.db4o.activation.ActivationPurpose; 05import com.db4o.activation.Activator; 06import com.db4o.ta.Activatable; 07 08public class Car implements Activatable, Cloneable { 09 private String model; 10 private Pilot pilot; 11 transient Activator _activator; 12 13 public Car(String model, Pilot pilot) { 14 this.model = model; 15 this.pilot = pilot; 16 } 17 // end Car 18 19 // Bind the class to an object container 20 public void bind(Activator activator) { 21 if (_activator == activator) { 22 return; 23 } 24 if (activator != null && _activator != null) { 25 throw new IllegalStateException(); 26 } 27 _activator = activator; 28 } 29 // end bind 30 31 // activate the object fields 32 public void activate(ActivationPurpose purpose) { 33 if (_activator == null) 34 return; 35 _activator.activate(purpose); 36 } 37 // end activate 38 39 40 public String getModel() { 41 activate(ActivationPurpose.READ); 42 return model; 43 } 44 // end getModel 45 46 public void setModel(String model) { 47 activate(ActivationPurpose.WRITE); 48 this.model = model; 49 } 50 // end setModel 51 52 public Pilot getPilot() { 53 activate(ActivationPurpose.READ); 54 return pilot; 55 } 56 // end getPilot 57 58 public void setPilot(Pilot pilot) { 59 activate(ActivationPurpose.WRITE); 60 this.pilot = pilot; 61 } 62 // end setPilot 63 64 public String toString() { 65 activate(ActivationPurpose.READ); 66 return model + "[" + pilot + "]"; 67 } 68 // end toString 69 70 public void changePilot(String name, int id) { 71 pilot.setName(name); 72 pilot.setId(id); 73 } 74 75}