Strain the ricotta by placing it in a cheesecloth-lined colander over a bowl and refrigerate overnight to strain.
In a food processor, combine flour, sugar, and salt. Add butter and pulse just a few times or until the mixture resembles coarse sand. Add egg and wine, blending to form a dough. If too loose, add a tablespoon of flour.
Turn out onto a lightly floured surface and knead until smooth. Wrap in plastic and refrigerate for at least 1 hour. This step is crucial for the gluten to relax.
On a lightly floured surface, using a rolling pin, roll dough thin and use a cookie cutter and cut into 3-3 ½ inch circles.
Wrap each circle around a cannoli form/mold and seal with egg white.
Heat 2 inches of oil in a saucepan or dutch oven to 325°F (160°C) and fry shells for about 1 minute or until golden. Cool on a rack and carefully remove from forms while warm.
To make the filling, in a large bowl mix ricotta, powdered sugar, and cinnamon. Fold in chocolate chips and/or pistachios (if using both, divide the mixture into two bowls).
Fill the cooled shells with ricotta mixture. Optionally, dip ends in crushed pistachios or mini chocolate chips.