2
0
Fork 0

Added start of demo data of tech demo

This commit is contained in:
Willem Cazander 2012-05-07 16:29:20 +02:00
parent 2872143028
commit beb57fe92e
12 changed files with 321 additions and 0 deletions

View file

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<v:root xmlns:v="http://vasc.forwardfire.net/eld/vasc-lang.eld"
xmlns:mm="http://vasc.forwardfire.net/eld/vasc-backend-metamodel.eld"
>
<mm:csvDataContext
el.id="metaPeopleDS"
file="meta-people.csv"
/>
<mm:metaModelBackend
id="metaPeopleBackend"
dataContextProvider="${metaPeopleDS}"
table="meta_people"
tableId="id"
/>
<v:entry id="metaPeople" backendId="metaPeopleBackend">
<v:field id="id" list="false"/>
<v:field id="name"/>
<v:field id="age"/>
<v:field id="gender" vascEntryFieldType="ListField">
<v:vascSelectItemModelString data="male,female,unknown"/>
</v:field>
<v:field id="function" vascEntryFieldType="ListField">
<v:vascSelectItemModelString data="manager,devver,sales"/>
</v:field>
</v:entry>
<mm:csvDataContext
el.id="metaProjectDS"
file="meta-project.csv"
/>
<mm:metaModelBackend
id="metaProjectBackend"
dataContextProvider="${metaProjectDS}"
table="meta_project"
tableId="id"
/>
<v:entry id="metaProject" backendId="metaProjectBackend">
<v:field id="id" list="false"/>
<v:field id="name"/>
<v:field id="decription" vascEntryFieldType="TextAreaField"/>
</v:entry>
</v:root>

View file

@ -0,0 +1,10 @@
id,name,gender,age,function
1,"mike",male,18,manager
2,"michael",male,19,manager-co
3,"peter",male,18,devop
4,"bob",male,17,devver
5,"barbara, barb",female,18,devver
6,"charlotte",female,18,devver
7,"hillary",female,20,tester
8,"vera",female,17,tester
9,"carrie",female,17,sales
1 id name gender age function
2 1 mike male 18 manager
3 2 michael male 19 manager-co
4 3 peter male 18 devop
5 4 bob male 17 devver
6 5 barbara, barb female 18 devver
7 6 charlotte female 18 devver
8 7 hillary female 20 tester
9 8 vera female 17 tester
10 9 carrie female 17 sales

View file

@ -0,0 +1,4 @@
id,name,description
1,"fix-website","Move all pages to plain text so it is printable when there is no power."
2,"refactor-HJY","Make function HJY abstract and use generic logic to improve total cpu lag on system"
3,"custum-graph","Big custumer foobar want really this killer graph woobly line point stuff."
1 id name description
2 1 fix-website Move all pages to plain text so it is printable when there is no power.
3 2 refactor-HJY Make function HJY abstract and use generic logic to improve total cpu lag on system
4 3 custum-graph Big custumer foobar want really this killer graph woobly line point stuff.

View file

@ -0,0 +1,13 @@
dn: cn=Mirjan Broek,os=Amsterdam,ou=user,o=forwardfire,c=net
objectClass: inetOrgPerson
cn: Mirjan Broek
description: Prime Contractors
mail: mirjan.broek@demo.vasc.forwardfire.net
postalAddress: 233 Mobbs Circuit$Vermont VIC
postalCode: 3133
sn: Broek
telephoneNumber: 622 7619
title: Secretary

View file

@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<v:root xmlns:v="http://vasc.forwardfire.net/eld/vasc-lang.eld"
xmlns:l="http://vasc.forwardfire.net/eld/vasc-backend-ldap.eld"
>
<l:ldapConnectionProvider
el.id="ldapSudoers"
ldapHost="localhost"
bindUser="uid=admin-sudo,ou=services,dc=example,dc=nl"
bindPass="test"
/>
<l:ldapBackend
id="ldapBackendSudoers"
ldapConnectionProvider="${ldapSudoers}"
baseDN="ou=sudoers,dc=example,dc=nl"
keyAttribute="cn"
ldapFilter="(&amp;(objectClass=sudoRole))"
/>
<v:entry id="sudoers" backendId="ldapBackendSudoers">
<v:field id="user" backendName="cn" readOnly="true"/>
<v:field id="description" rolesEdit="admin" rolesList="all"/>
<v:field id="sudoCommand" vascEntryFieldType="MultiTextField"/>
<v:field id="sudoHost" vascEntryFieldType="MultiTextField"/>
<v:field id="sudoUser" vascEntryFieldType="MultiTextField"/>
<!--
<v:ldapNextIdFunction name="nextUidNumber" ldapFilter="(&(objectClass=posixGroup))" ldapAttribute="gidnumber"/>
<v:listeners hook="post_create">
<etc:loginToFtpServer/>
</v:listeners>
<v:link fieldName="user" viewController="ldapUsers" parameterName="user_cn"/>
<v:link fieldName="gidNumber" viewController="ldapGroups" parameterName="group_key,${baseDn}"/>
<v:detail fieldName="gidNumber" detailController="${ldapGroups}"/>
-->
</v:entry>
<l:ldapConnectionProvider
el.id="ldapUsers"
ldapHost="10.11.12.96"
bindUser="uid=libnss,ou=services,dc=example,dc=nl"
bindPass="test"
/>
<l:ldapBackend
id="ldapBackendUsers"
ldapConnectionProvider="${ldapUsers}"
baseDN="ou=users,dc=example,dc=nl"
keyAttribute="uid"
ldapFilter="(&amp;(objectClass=posixAccount))"
/>
<v:entry id="users" backendId="ldapBackendUsers">
<v:field id="uid" />
<v:field id="uidNumber" vascEntryFieldType="IntegerField"/>
<v:field id="gidNumber" vascEntryFieldType="IntegerField"/>
<v:field id="loginShell" list="false"/>
<v:field id="homeDirectory" list="false"/>
<v:field id="cn" list="false"/>
<v:field id="givenName" />
<v:field id="sn" />
<v:field id="mailbox" list="false"/>
<v:field id="mail" vascEntryFieldType="EmailField"/>
<v:field id="mailActive" vascEntryFieldType="BooleanField"/>
<v:field id="alias" vascEntryFieldType="MultiTextField" list="false"/>
<v:field id="autoResponseActive" vascEntryFieldType="BooleanField" />
<v:field id="autoresponseMessage" vascEntryFieldType="TextAreaField" list="false"/>
<v:field id="sambaAcctFlags" list="false"/>
<v:field id="sambaPrimaryGroupSID" list="false"/>
<v:field id="sambaSID" list="false"/>
</v:entry>
<l:ldapConnectionProvider
el.id="ldapMachines"
ldapHost="localhost"
bindUser="uid=samba,ou=services,dc=example,dc=nl"
bindPass="test"
/>
<l:ldapBackend
id="ldapBackendMachines"
ldapConnectionProvider="${ldapMachines}"
baseDN="ou=machines,dc=example,dc=nl"
keyAttribute="uid"
ldapFilter="(&amp;(objectClass=sambaSamAccount))"
/>
<v:entry id="machines" backendId="ldapBackendMachines">
<v:field id="uid" />
<v:field id="sambaAcctFlags"/>
<v:field id="sambaSID" />
<v:field id="uidNumber" />
</v:entry>
</v:root>

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<v:root xmlns:v="http://vasc.forwardfire.net/eld/vasc-lang.eld"
xmlns:mm="http://vasc.forwardfire.net/eld/vasc-backend-metamodel.eld"
xmlns:j="http://vasc.forwardfire.net/eld/vasc-backend-jdbc.eld"
>
<j:jdbcConnectionProvider
el.id="dbRssFeeds"
driverClassName="org.postgresql.Driver"
dbUrl="jdbc:postgresql://localhost/vasc_testpg"
dbUser="test"
dbPassword="test"
/>
<j:jdbcBackend
id="rssChannelDB"
jdbcConnectionProvider="${dbRssFeeds}"
idColumnName="id"
sqlList="SELECT * FROM channel LIMIT 100"
sqlDelete="DELETE FROM channel WHERE id = ?0"
sqlPersist="INSERT INTO channel (name,url,importing,etc) VALUES (?0,?1,?2,?3,?4)"
sqlMerge="UPDATE channel (name,url) VALUE (?0,?1)"
/>
<v:entry id="rssChannel" backendId="rssChannelDB">
<v:field id="id" readOnly="true"/>
<v:field id="name"/>
<v:field id="url"/>
<v:field id="importing" vascEntryFieldType="BooleanField"/>
<v:field id="last_parsed" vascEntryFieldType="DateField" />
<v:field id="last_checked" vascEntryFieldType="DateField"/>
<v:field id="parser_locale" list="false"/>
<v:field id="column_mapping" list="false"/>
</v:entry>
</v:root>

View file

@ -0,0 +1 @@
All *.xml in this dir are automaticly started.

View file

@ -0,0 +1,6 @@
Readme for Vasc Tech Demo application.
To start:
execute: run.sh or run.bat

View file

@ -0,0 +1,108 @@
package net.forwardfire.vasc.demo.tech.ui;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
import java.util.logging.Logger;
import net.forwardfire.vasc.core.VascController;
import org.apache.catalina.startup.Tomcat;
public class TomcatManager {
private Logger logger = null;
private Tomcat tomcat = null;
private VascController vascController = null;
public TomcatManager() {
logger = Logger.getLogger(TomcatManager.class.getName());
}
public void start() throws Exception {
Tomcat tomcat = new Tomcat();
String webPort = System.getenv("PORT");
if(webPort == null || webPort.isEmpty()) {
webPort = "8899";
}
tomcat.setPort(Integer.valueOf(webPort));
if (System.getProperty("java.class.path").contains("classes")) {
String webappPathLocation = "../vasc-demo-tech-web/src/main/webapp/";
String deployPath = new File(webappPathLocation).getAbsolutePath();
logger.info("Deploy demo app from workspace path: "+deployPath);
tomcat.addWebapp("/demo",deployPath);
} else {
File techWarFile = null;
for (File file:new File("lib").listFiles()) {
if (file.getName().endsWith("war")) {
techWarFile = file;
break;
}
}
if (techWarFile==null) {
throw new NullPointerException("Could not locate war file in lib directory.");
}
File destDir = new File("tomcat.wars"+File.separator+techWarFile.getName());
if (destDir.exists()==false) {
destDir.mkdirs();
JarFile jar = new JarFile(techWarFile);
Enumeration<JarEntry> jars = jar.entries();
while (jars.hasMoreElements()) {
java.util.jar.JarEntry file = jars.nextElement();
java.io.File f = new java.io.File(destDir+File.separator+file.getName());
if (file.isDirectory()) {
f.mkdir();
continue;
}
InputStream is = jar.getInputStream(file);
FileOutputStream fos = new FileOutputStream(f);
while (is.available() > 0) {
fos.write(is.read()); // slow copy
}
fos.close();
is.close();
}
}
String deployPath = destDir.getAbsolutePath();
logger.info("Deploy war path: "+deployPath);
tomcat.addWebapp("/demo",deployPath);
}
instance = this;
tomcat.start();
}
public void stop() throws Exception {
if (tomcat==null) {
return;
}
tomcat.stop();
instance = null;
}
static private TomcatManager instance = null;
static public TomcatManager getInstance() {
return instance; // hackje to rm mvn 1-1 dep with ui
}
/**
* @return the vascController
*/
public VascController getVascController() {
return vascController;
}
/**
* @param vascController the vascController to set
*/
public void setVascController(VascController vascController) {
this.vascController = vascController;
}
}