Difference between revisions of "Hello World!"

From CCIL
Jump to: navigation, search
(Startup script)
(Configuration)
Line 108: Line 108:
 
==== Configuration ====
 
==== Configuration ====
  
/config/hello_world.ttl
+
/config/ccil-tutorials-hello_world.ttl
 
<pre>
 
<pre>
 
#
 
#

Revision as of 09:12, 18 May 2017

Goal

This is the simplest tutorial - we will make a pipeline which outputs the famous "Hello Wold!".

Project

This project contains only a distribution. Once compiled, it will produce a zip which contains all you need to run the application.

ccil-tutorials-hello_world
|- distribution
\- pom.xml

Setup

Distribution

pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<artifactId>ccil-tutorials-hello_world</artifactId>
	<name>ccil-tutorials-hello_world</name>
	<url>http://ccil.sourceforge.net/documentation/index.php?title=Hello_World!</url>
	<packaging>pom</packaging>
	<properties>

	</properties>
	<parent>
		<groupId>net.ccil</groupId>
		<artifactId>ccil-tutorials</artifactId>
		<version>1.3.6</version>
	</parent>
	<dependencies>
		<!-- App -->
		<dependency>
			<artifactId>ccil-app</artifactId>
			<groupId>net.ccil</groupId>
			<version>${ccil.version}</version>
		</dependency>
		<dependency>
			<artifactId>ccil-common-generic</artifactId>
			<groupId>net.ccil</groupId>
			<version>${ccil.version}</version>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.17</version>
		</dependency>
	</dependencies>
	<build>
		<finalName>${project.name}</finalName>
		<plugins>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<configuration>
					<descriptors>
						<descriptor>bin.xml</descriptor>
					</descriptors>
				</configuration>
				<executions>
					<execution>
						<id>make-assembly</id>
						<phase>package</phase>
						<goals>
							<goal>attached</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<organization>
		<name>Data Craft and Magic ltd.</name>
		<url>http://datacraftmagic.com/</url>
	</organization>
</project>
bin.xml

TBA

files
TBA

Startup script

bin/ccil-tutorials-hello_world-app.sh

#!/bin/bash
CCIL_HOME=`dirname $PWD`
CCIL_CONTEXT=$CCIL_HOME/context

java -cp "$CCIL_HOME/lib/*:$CCIL_HOME/config:$CCIL_HOME/launcher/*" -Dserver.config.file=ccil-tutorials-hello_world-app.ttl -Dserver.home.dir=$CCIL_HOME -Xmx1024M -Dserver.context.dir=$CCIL_CONTEXT -Dserver.jmx.enabled=false net.ccil.execution.CcilConsoleApp -execute -root $CCIL_HOME/context/apps "$@"

Configuration

/config/ccil-tutorials-hello_world.ttl

#
# CCIL console configuration
#
@prefix rdf:		<http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs:		<http://www.w3.org/2000/01/rdf-schema#>.

@prefix config:		<https://sourceforge.net/projects/cybercore/config#>.
@prefix entity:		<https://sourceforge.net/projects/cybercore/entities#>.
@prefix service:	<https://sourceforge.net/projects/cybercore/services#>.
@prefix ccil:	<https://sourceforge.net/projects/ccil/properties#>.

@prefix ccil:		<https://sourceforge.net/projects/ccil/properties#>.

#	generic	-----------------------------------------------

service:echo	rdf:type		entity:service ;				
					entity:implementation	"net.ccil.stages.generic.EchoStage" ;
					entity:classpath		"" ;
					entity:arguments		"" .

The application context

# Hello World!
#-------------------------------------

context.title = Hello World!
context.description = Minimalistic CCIL app
context.author = Atanas Ilchev
context.comment = n/a
context.thumbnail = media/logo.png

# collection
context.fill.pipeline = ECHO 

ECHO = echo
ECHO.value = Hello World!

# properties
xfer = xfer

Further steps

Links