package page.com.jrsstray;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.wikiwebserver.handler.http.FormData;
import org.wikiwebserver.handler.http.HTTPHandler;
import org.wikiwebserver.handler.http.interfaces.HTTPResponder;

import page.tools.xml.JNLPResponder;

public class JNLP implements HTTPResponder {
    
    public Object respond(HTTPHandler conn) throws IOException {
        
        ProgramDetails details = new ProgramDetails();
        details.setCodebase(conn.getServiceAddress());
        
        FormData formData = conn.getRequest().getFormData();
        if (formData != null) {
            String url = formData.getFirst("url");
            if (url != null) {
                details.setCommandLineArguments(new String[] { url });
            }
            else {
                List<String> urls = new ArrayList<String>();
                int i = 1;
                String nextUrl = formData.getFirst("url" + i++);
                while (nextUrl != null) {
                    urls.add(nextUrl);
                    nextUrl = formData.getFirst("url" + i++);
                }
                
                details.setOnline(false);
                details.setCommandLineArguments(urls.toArray(new String[urls.size()]));
            }
        }
        
        return new JNLPResponder(details);
    }
}


