Rinse the rice several times in cold water and drain.
Put it in a saucepan with the water, bay leaf, peppercorns, cinnamon, cloves and salt and bring to the boil.
Turn to medium-low and cook covered for about 12 minutes until the water is absorbed and the grains are tender but separate.
Meanwhile, heat the oil in a frying pan and fry the tofu for a few minutes per side, then lift out; in the same oil, fry the nuts and raisins until golden.
Put the rice in a bowl, fluff with a fork, gently fold in the tofu and nut mixture and serve hot.