aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.CodeGeneration/Templates
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2017-12-19 10:25:40 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2017-12-19 10:25:40 +0200
commitafc7a07d285e08d905c58dd5978441c155b2f296 (patch)
treea2f4f51ef2747ae3a2aded2637a352ce8ef85934 /Software/Visual_Studio/Tango.CodeGeneration/Templates
parentad35c9c2df0001157ea13312382f3cdfdad67f06 (diff)
downloadTango-afc7a07d285e08d905c58dd5978441c155b2f296.tar.gz
Tango-afc7a07d285e08d905c58dd5978441c155b2f296.zip
MERGE.
Diffstat (limited to 'Software/Visual_Studio/Tango.CodeGeneration/Templates')
-rw-r--r--Software/Visual_Studio/Tango.CodeGeneration/Templates/EntityCodeFileJava.cshtml59
-rw-r--r--Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFileJava.cshtml23
-rw-r--r--Software/Visual_Studio/Tango.CodeGeneration/Templates/ObservablesAdapterFile.cshtml46
-rw-r--r--Software/Visual_Studio/Tango.CodeGeneration/Templates/TangoDAOJavaFile.cshtml27
4 files changed, 155 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.CodeGeneration/Templates/EntityCodeFileJava.cshtml b/Software/Visual_Studio/Tango.CodeGeneration/Templates/EntityCodeFileJava.cshtml
new file mode 100644
index 000000000..aeba15b12
--- /dev/null
+++ b/Software/Visual_Studio/Tango.CodeGeneration/Templates/EntityCodeFileJava.cshtml
@@ -0,0 +1,59 @@
+package com.twine.tango.dal.entities;
+
+import com.raizlabs.android.dbflow.annotation.Column;
+import com.raizlabs.android.dbflow.annotation.ForeignKey;
+import com.raizlabs.android.dbflow.annotation.ForeignKeyReference;
+import com.raizlabs.android.dbflow.annotation.Table;
+import org.joda.time.DateTime;
+import com.twine.tango.dal.Entity;
+import com.twine.tango.dal.TangoDB;
+
+
+ @@Table(name = "@(Model.TableName)", database = TangoDB.class)
+ public class @(Model.Name) extends Entity
+ {
+ @foreach (var prop in Model.Fields)
+ {
+ if (!prop.Construct)
+ {
+ <div>
+ @@Column(name = "@(prop.FieldName)")
+ private @(prop.Type) @(prop.Description);
+
+ </div>
+ }
+ else
+ {
+ <div>
+ @@ForeignKey(references = { @@ForeignKeyReference(columnName = "@(prop.FieldName)_GUID", foreignKeyColumnName = "GUID")})
+ private @(prop.Type) @(prop.Description);
+
+ </div>
+ }
+ }
+
+ @foreach (var prop in Model.Fields)
+ {
+ <div>
+ /**
+ * Gets the @(prop.Name).
+ *
+ * return the @(prop.Name)
+ */
+ public @(prop.Type) @(prop.Type == "Boolean" ? "is" + prop.Name : "get" + prop.Name)()
+ {
+ return @(prop.Description);
+ }
+
+ /**
+ * Sets the @(prop.Name).
+ *
+ * @@param @(prop.Description) the @(prop.Name)
+ */
+ public void set@(prop.Name)(@(prop.Type) @(prop.Description))
+ {
+ this.@(prop.Description) = @(prop.Description);
+ }
+ </div>
+ }
+ }
diff --git a/Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFileJava.cshtml b/Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFileJava.cshtml
new file mode 100644
index 000000000..435608204
--- /dev/null
+++ b/Software/Visual_Studio/Tango.CodeGeneration/Templates/EnumerationFileJava.cshtml
@@ -0,0 +1,23 @@
+package com.twine.tango.dal.enumerations;
+
+import com.twine.tango.core.DescriptionAnnotation;
+
+public enum @(Model.Name)
+{
+ @foreach (var prop in Model.Fields)
+ {
+ <div>
+ @@DescriptionAnnotation(description = "@(prop.Description)")
+ @(prop.Name)(@(prop.Value)),
+
+ </div>
+ }
+ ;
+
+ private int value;
+
+ @(Model.Name)(int value)
+ {
+ this.value = value;
+ }
+}
diff --git a/Software/Visual_Studio/Tango.CodeGeneration/Templates/ObservablesAdapterFile.cshtml b/Software/Visual_Studio/Tango.CodeGeneration/Templates/ObservablesAdapterFile.cshtml
new file mode 100644
index 000000000..856b8ac42
--- /dev/null
+++ b/Software/Visual_Studio/Tango.CodeGeneration/Templates/ObservablesAdapterFile.cshtml
@@ -0,0 +1,46 @@
+using System.Collections.ObjectModel;
+using System.ComponentModel;
+
+namespace Tango.DAL.Observables
+{
+ public partial class @(Model.Name)
+ {
+ @foreach (var prop in Model.Properties)
+ {
+ <div>
+ private @(prop.Type) _@(prop.Name.ToLower());
+ /// <summary>
+ /// Gets or sets the @(prop.Name).
+ /// </summary>
+ public @(prop.Type) @(prop.Name)
+ {
+ get { return _@(prop.Name.ToLower()); }
+ set { _@(prop.Name.ToLower()) = value; RaisePropertyChanged(nameof(@(prop.Name))); }
+ }
+
+ private ICollectionView _@(prop.Name.ToLower())ViewSource;
+ /// <summary>
+ /// Gets or sets the @(prop.Name) View Source.
+ ///</summary>
+ public ICollectionView @(prop.Name)ViewSource
+ {
+ get { return _@(prop.Name.ToLower())ViewSource; }
+ set { _@(prop.Name.ToLower())ViewSource = value; RaisePropertyChanged(nameof(@(prop.Name)ViewSource)); }
+ }
+ </div>
+ }
+
+ /// <summary>
+ /// Initialize collection sources.
+ /// </summary>
+ private void InitCollectionSources()
+ {
+ @foreach (var prop in Model.Properties)
+ {
+ <div>
+ @(prop.Name)ViewSource = CreateCollectionView(@(prop.Name));
+ </div>
+ }
+ }
+ }
+}
diff --git a/Software/Visual_Studio/Tango.CodeGeneration/Templates/TangoDAOJavaFile.cshtml b/Software/Visual_Studio/Tango.CodeGeneration/Templates/TangoDAOJavaFile.cshtml
new file mode 100644
index 000000000..46bd6532c
--- /dev/null
+++ b/Software/Visual_Studio/Tango.CodeGeneration/Templates/TangoDAOJavaFile.cshtml
@@ -0,0 +1,27 @@
+package com.twine.tango.dal.dao;
+
+import com.raizlabs.android.dbflow.sql.language.SQLite;
+@foreach (var entity in Model.Entities)
+{
+ <div>import com.twine.tango.dal.entities.@(entity.Name);</div>
+}
+import java.util.List;
+
+public class TangoDAO
+{
+@foreach (var entity in Model.Entities)
+{
+<div>
+ /**
+ * Gets all the @(entity.TableName) from database.
+ *
+ * @@return all @(entity.TableName)
+ */
+ public static List<@(entity.Name)> getAll@(entity.TableName)()
+ {
+ return SQLite.select().from(@(entity.Name).class).queryList();
+ }
+
+</div>
+}
+}