Place the cashews (50g) in a food processor and blitz until finely ground. Place another 50 g of cashews and blitz until roughly chopped.
Sift together the flour, baking powder, baking soda, salt, and spices (3 times).
Dice the butter and leave to soften at room temperature.
Dry roast the semolina over low-medium heat in a saucepan for 5 minutes. Continue roasting until it is nutty and aromatic. Be careful not to brown it. Set aside to cool.
Place the softened butter in a large mixing bowl. Beat it with a wooden spoon until it becomes easy to handle. Next, beat with a hand mixer on medium speed for 1 minute. Add the sugar (100g) in 4 additions. Beat until light and fluffy.
Add the semolina, alternately with milk. That means; 1/3 of the semolina, 1/2 of the milk. Then add another 1/3 of the semolina and 1/2 of the milk. Finally, add the rest of the semolina. Fold/mix in with a silicone spatula until each addition is fully incorporated before adding the next. DO NOT over-mix.
Cover and leave it to rest for around 2 hours. After 2 hours, preheat oven to 180°C. Prepare the pan. I used an 18 X 18 cm square pan. You can also use a 20 cm round pan. Grease and line it with parchment paper.
Separate egg yolks and whites. Make sure you use a clean bowl to place the whites. There should be no traces of yolk in the egg whites. It will ruin the meringue.
Beat the egg yolks with sugar (50g) until pale and thick. Then, stir in rose water, and/or vanilla if using.
To make the final batter; first, gently mix half of the yolk mixture with the semolina mixture. Next, carefully fold half of the flour and the ground nuts. Gently mix half of the yolk mixture. Carefully fold the rest of the flour. Gently mix in the chopped nuts, candied peels, and crystallized ginger until combined. Set aside.
Beat the egg whites with a pinch of salt on medium-low speed until foamy. Add in sugar (50g) in 3 additions. Beat on medium-high until (nearly) stiff peaks form.
Gently fold whipped egg whites into the prepared batter in 2-3 batches until evenly mixed.
Pour it into the prepared pan and level the top evenly. Decorate with cashews.
Reduce the oven temperature to 170C and bake for 30 minutes. Again reduce to 160C and bake for another 30 minutes or until pale gold on top.
Remove the cake from the oven. Mix the brandy and honey and drizzle over the cake. (optional) Allow the cake to cool in the tin for about 10 minutes.
Remove the cake from the pan and leave it on a wire rack until cool. Wrap and store in a cool place until serve.
If using, dust with icing sugar. Cut and serve. A piece of Love Cake goes well with a hot cup of Sri Lankan (Ceylon) black tea.