Now it's time to do some Java coding. Before we start the actual coding, it's always a good idea to quickly identify the logic that has to be taken care of by the code we are going to write. This exercise really does help a lot.
In order to develop a controller for this scenario, let's take a look at the implementation logic that we will include in the Java-backed controller at a high level:
A controller will expect
nodeid
as an input parameterCheck whether the given node is present in the repository
Check whether the user has at least read permissions on the given node
Get the filesystem location for the given node
Get the size on the filesystem for the given node
Prepare the model object and return it to the FTL response template