Hello to all SIS developers,
This is Siddhesh Rane. I have been accepted into Google Summer of Code to work 
on a desktop client for SIS for editing metadata and for coordinate transform 
operations. The JIRA issue is SIS-351 
(https://issues.apache.org/jira/browse/SIS-351)

My code base is available at https://github.com/SiddheshRane/sis-client 
(https://github.com/SiddheshRane/sis-client) 

Progress so far
        * The homepage can list out current configuration of SIS such as list 
of runtime DataStoreProviders, useful for debugging and as About page 
        * There is file drag and drop pane that also detects SIS supported file 
types. It has been made as an independent control not tied to SIS 
        * There is metadata viewer tab that lists out tree formatted metadata 
like the sis-console. Right now it is ordinary text. Next step is to display it 
using TreeTable with search filtering 
        * There is prototype proof-of-concept Google maps, which will later 
show data points and degree of error during coordinate transformation 
        * A CRS pane is in the works 

Issues encountered
        * Initially the app was not detecting all DataStoreProviders which were 
added as runtime dependencies. The problem was with the default maven pom for 
JavaFX projects which did not pass classpath parameter to exec plugin. It has 
been fixed now. 
        *  Geotoolkit (https://github.com/Geomatys/geotoolkit) was suggested to 
me by Martin as it has some ui components related to this project. The project 
uses Java Advanced Imaging (JAI) which dates back to Java 1.3 days. Even though 
I got a 64-bit version of that library installed somehow, the project still 
could not execute.  

Action plan for now
        * Geotoolkit code has given me ready made examples of how to use SIS 
for exactly the functionality I want. I will try using the JavaFX Widgets 
project as a library in my code to see the components in action.  
        * If the widgets library depends on JAI I will extract the relevant 
controls. Some Swing specific code fragments need to be refactored out. 
        * First focus will be on CRS. Next comes metadata because I find it 
more vast. Then comes transformations and lastly map integration. 
        * All controls developed will use the base interface in org.opengis for 
display but editing will use implementation classes from SIS. I feel this will 
make it more general purpose. But if you feel its unnecessary I'll stick to sis 
specific classes 
        * When the app becomes usable the git code will be checked into svn 
jdk8 branch. The pom will be made as a child of SIS parent pom 
        * The ui components will be packaged a as library into a separate maven 
artifact for reusability 

This is a rough plan for sequence of events but it will happen in parallel 
along with refinements and bug fixes all along 
Feedback from community
You can tell me a workflow of how you'll like to use the software and any 
features you think are most important to you and I'll keep that in mind.

Regards
​​​​​​​Siddhesh Rane

Reply via email to