Skip to content

Commit

Permalink
And more work!
Browse files Browse the repository at this point in the history
  • Loading branch information
iceraj committed Jan 17, 2014
1 parent 4d12c1a commit a5c3223
Show file tree
Hide file tree
Showing 48 changed files with 13,134 additions and 6,368 deletions.
7 changes: 5 additions & 2 deletions src/star/genetics/client/Helper.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import star.genetics.genetic.model.Creature;
import star.genetics.visualizers.Visualizer;

import com.google.gwt.json.client.JSONNull;
import com.google.gwt.json.client.JSONNumber;
import com.google.gwt.json.client.JSONString;
import com.google.gwt.json.client.JSONValue;
Expand Down Expand Up @@ -80,11 +79,15 @@ public static final JSONValue wrapString(String value)
{
return new JSONString(value);
}
return JSONNull.getInstance();
return new JSONString("");
}

public static final String unwrapString(JSONValue value)
{
if (value == null)
{
return null;
}
JSONString s = value.isString();
return s != null ? s.stringValue() : null;
}
Expand Down
3 changes: 3 additions & 0 deletions src/star/genetics/client/JSONable.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package star.genetics.client;

import star.genetics.genetic.model.Model;

import com.google.gwt.json.client.JSONObject;

public interface JSONable
Expand Down Expand Up @@ -48,4 +50,5 @@ public interface JSONable
static final String KIND = "kind";

JSONObject getJSON();
Model getModel();
}
11 changes: 11 additions & 0 deletions src/star/genetics/client/JSONableList.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,15 @@ public JSONableList(JSONArray array)

public void add(T element)
{
if( element instanceof String)
{
data.set(data.size(), Helper.wrapString((String)element));
}
else
{
JSONable e = (JSONable) element;
data.set(data.size(), e.getJSON());
}
}

public int size()
Expand Down Expand Up @@ -51,6 +58,10 @@ public T next()
{
JSONValue element = data.get(index);
index++;
if( element.isString() != null)
{
return (T)Helper.unwrapString(element);
}
return create(element.isObject());
}

Expand Down
13 changes: 8 additions & 5 deletions src/star/genetics/client/StarGenetics.java
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,12 @@ public void execute(Exec exec)
{
try
{
logger.log(Level.FINE, "in Execute.");
logger.log(Level.INFO, "in Execute.");
String command = exec.getCommand();
System.out.println("command " + command);
logger.log(Level.INFO, "in Command:" + command);
if (Commands.Open.is(command))
{
logger.log(Level.INFO, "in Command: OPEN -- " + command);
open(exec);
}
else if (Commands.ListStrains.is(command))
Expand Down Expand Up @@ -81,8 +82,11 @@ private void save(Exec exec)

private void open(Exec exec)
{
logger.log(Level.INFO, "in Command: QQ Open");
Open cmd = exec.cast();
logger.log(Level.INFO, "in Command: AA Open");
cmd.execute(this);
logger.log(Level.INFO, "in Command: WW Open");
}

private void listStrains(Exec exec)
Expand All @@ -101,9 +105,8 @@ private void updateExperiment(Exec exec)

private static native void log(String str)
/*-{
if( typeof(console) == 'object' && console && console.info )
{
console.info( str ) ;
if (typeof (console) == 'object' && console && console.info) {
console.info(str);
}
}-*/;

Expand Down
3 changes: 3 additions & 0 deletions src/star/genetics/client/Stargenetics_gwt_java.java
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,15 @@ public static void execute(Exec obj)
{
logger.log(Level.INFO, "New StarGenetics backend for token " + token);
map.put(token, new StarGenetics());

}
else
{
logger.log(Level.INFO, "Loading existing StarGenetics backend for token " + token);
}
logger.log(Level.INFO, "New StarGenetics backend for token " + token + " pre exec.");
map.get(token).execute(obj);
logger.log(Level.INFO, "New StarGenetics backend for token " + token + " post exec.");
}
else
{
Expand Down
14 changes: 12 additions & 2 deletions src/star/genetics/client/messages/Open.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
package star.genetics.client.messages;

import java.util.logging.Level;
import java.util.logging.Logger;

import star.genetics.client.StarGenetics;
import star.genetics.genetic.model.Model;
import star.genetics.parser.ModelParser;
Expand All @@ -10,7 +13,6 @@

public class Open extends Exec
{

protected Open()
{
}
Expand All @@ -23,21 +25,29 @@ protected Open()

public final Model execute(StarGenetics starGenetics)
{
Logger logger = Logger.getLogger("Open");
final String VERSION_1 = "Version_1";
Model model = null;
logger.log(Level.INFO, "Open 1");
if (VERSION_1.equalsIgnoreCase(getProtocol()))
{
model = (ModelParser.parse(getJSONModel()));
logger.log(Level.INFO, "Open 2");
model = ModelParser.parse(getJSONModel());
logger.log(Level.INFO, "Open 3");
JSONObject ret = new JSONObject();
logger.log(Level.INFO, "Open 4");
starGenetics.setModel(model);
logger.log(Level.INFO,"Open 5");
onSuccess(ret.getJavaScriptObject());
logger.log(Level.INFO, "Open 6");
}
else
{
JSONObject ret = new JSONObject();
ret.put("error", new JSONString("Unrecognized protocol."));
onError(ret.getJavaScriptObject());
}
logger.log(Level.INFO, "Open 7");
return model;
}
}
11 changes: 3 additions & 8 deletions src/star/genetics/client/messages/Save.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,6 @@

import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONString;
import com.google.web.bindery.autobean.shared.AutoBean;
import com.google.web.bindery.autobean.shared.AutoBeanCodex;
import com.google.web.bindery.autobean.shared.AutoBeanUtils;

public class Save extends Exec
{
Expand All @@ -19,11 +16,9 @@ protected Save()

public final native String getProtocol() /*-{ return this.data.protocol; }-*/;

public final String serialize(ModelWriter model)
public final JSONObject serialize(ModelWriter model)
{

AutoBean<Model> m = AutoBeanUtils.getAutoBean(model);
return AutoBeanCodex.encode(m).getPayload();
return model.getJSON();
}

public final void execute(StarGenetics starGenetics, Model model)
Expand All @@ -32,7 +27,7 @@ public final void execute(StarGenetics starGenetics, Model model)
if (VERSION_1.equalsIgnoreCase(getProtocol()))
{
JSONObject ret = new JSONObject();
ret.put("model", new JSONString(serialize((ModelWriter) model)));
ret.put("model", serialize((ModelWriter) model));
ret.put("model2", new JSONString("test"));
starGenetics.setModel(model);
onSuccess(ret.getJavaScriptObject());
Expand Down
2 changes: 1 addition & 1 deletion src/star/genetics/client/messages_en.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#en
#Tue Jan 14 15:53:22 EST 2014
#Thu Jan 16 19:56:22 EST 2014
GroupBy.4={0} ({1}%)
GroupBy.3=<html><b>Male</b></html>
Cow.0=m\:
Expand Down
25 changes: 21 additions & 4 deletions src/star/genetics/genetic/impl/AlleleImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
import java.io.Serializable;

import star.genetics.client.Helper;
import star.genetics.genetic.model.Chromosome;
import star.genetics.genetic.model.Gene;
import star.genetics.genetic.model.Genome;
import star.genetics.genetic.model.Model;

import com.google.gwt.json.client.JSONObject;

Expand All @@ -12,16 +15,27 @@ public class AlleleImpl implements star.genetics.genetic.model.Allele, Serializa
private static final long serialVersionUID = 1L;
JSONObject data = new JSONObject();

public AlleleImpl(JSONObject data)
Model model;

@Override
public Model getModel()
{
return model;
}

public AlleleImpl(JSONObject data, Model model)
{
this.data = data;
this.model = model;
}

public AlleleImpl(String name, Gene gene)
public AlleleImpl(String name, Gene gene, Model model)
{
data.put(NAME, Helper.wrapString(name));
data.put(GENE, gene.getJSON());
data.put(CHROMOSOME, Helper.wrapString(gene.getChromosome().getName()));
data.put(GENE, Helper.wrapString(gene.getName()));
gene.getGeneTypes().add(this);
this.model = model;
}

public String getName()
Expand All @@ -31,7 +45,10 @@ public String getName()

public Gene getGene()
{
return new GeneImpl(data.get(GENE).isObject());
Genome g = getModel().getGenome();
Chromosome c= g.getChromosomeByName(Helper.unwrapString(data.get(CHROMOSOME)));
Gene gene = c.getGeneByName(Helper.unwrapString(data.get(GENE)));
return gene;
}

@Override
Expand Down
17 changes: 13 additions & 4 deletions src/star/genetics/genetic/impl/ChromosomeImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import star.genetics.genetic.model.Allele;
import star.genetics.genetic.model.Gene;
import star.genetics.genetic.model.Genome;
import star.genetics.genetic.model.Model;

import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONObject;
Expand All @@ -15,17 +16,25 @@ public class ChromosomeImpl implements star.genetics.genetic.model.Chromosome, S
{
private static final long serialVersionUID = 1L;
private JSONObject data;

public ChromosomeImpl(JSONObject data)
private Model model ;
public Model getModel()
{
return model;
}

public ChromosomeImpl(JSONObject data, Model model)
{
this.data = data;
this.model = model;
}

public ChromosomeImpl(String name, Genome genome)
public ChromosomeImpl(String name, Genome genome, Model model )
{
data = new JSONObject();
data.put(NAME, Helper.wrapString(name));
data.put(GENES, new JSONArray());
genome.addChromosome(this);
this.model = model;
}

public String getName()
Expand All @@ -39,7 +48,7 @@ public JSONableList<Gene> getGenes()
{
public Gene create(JSONObject d)
{
return new GeneImpl(d);
return new GeneImpl(d, getModel());
}
};
}
Expand Down
Loading

0 comments on commit a5c3223

Please sign in to comment.