Skip to content
This repository has been archived by the owner on May 4, 2022. It is now read-only.

Commit

Permalink
DecleX 1.0 Release
Browse files Browse the repository at this point in the history
  • Loading branch information
smaugho committed Nov 7, 2016
0 parents commit 7dc2be3
Show file tree
Hide file tree
Showing 199 changed files with 19,950 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/.metadata
/.recommenders
4 changes: 4 additions & 0 deletions Dependencies/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/saripaar
/ActiveAndroid
/androidannotations
/evo-inflector
7 changes: 7 additions & 0 deletions Dependencies/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/ActiveAndroid => https://github.com/smaugho/ActiveAndroid.git :branch = declex
<br>
/androidannotations => https://github.com/smaugho/androidannotations.git :branch = declex
<br>
/sapiraar => https://github.com/smaugho/android-saripaar.git :branch = declex
<br>
/evo-inflector => https://github.com/atteo/evo-inflector.git :branch = master
37 changes: 37 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
************************************
This project is available under the following license:
************************************
Copyright (C) 2016 DSpot Sp. z o.o

Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this file except in compliance with the License. You may obtain a copy of
the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations under
the License.

This project uses CodeModel (http://codemodel.java.net/), which is
distributed under the GlassFish Dual License, which means CodeModel is
subject to the terms of either the GNU General Public License Version 2 only
("GPL") or the Common Development and Distribution License("CDDL").

You may obtain a copy of the "CDDL" License at

http://www.opensource.org/licenses/cddl1.php

As per section 3.6 ("Larger Works") of the "CDDL" License, we may create a
Larger Work by combining Covered Software with other code not governed by
the terms of this License and distribute the Larger Work as a single
product.

We are therefore allowed to distribute CodeModel without Modification as
part of AndroidAnnotations.

About AndroidAnnotations generated files: if you create a larger work that
contains files generated by AndroidAnnotations, you can distribute that work
under terms of your choice.
57 changes: 57 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# DecleX

DecleX is a framework that aims to get closer to the idea of a fully Declarative Language for Android Development.
It is totally based on <a href="https://github.com/excilys/androidannotations/wiki" target="_blank">AndroidAnnotations</a>; in a similar fashion, we want to facilitate the writing and the maintenance of
Android applications to the highest level which has not been achieved up to now.


## Documentation

Please consult our Wiki in https://github.com/smaugho/declex/wiki

## Configuration

Download the library jar files from [here](https://github.com/smaugho/declex/releases/tag/v1.0):

* Place the core processor declex-v1.0.jar in a folder named compile-libs in your project.

* Place the API file declex-api.jar in a folder named libs in your project.

* Place the following lines in your build.graddle file:

```graddle
apply plugin: 'com.neenbedankt.android-apt'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'
}
}
apt {
arguments {
androidManifestFile variant.outputs[0].processResources.manifestFile
resourcePackageName 'YOUR PROJECT PACKAGE'
}
}
```
You should replace "YOUR PROJECT PACKAGE" by your project package name (Ex. com.company.example).

* And finally add to your dependencies the framework libraries:

```graddle
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
apt files('compile-libs/declex-v1.0.jar')
...
```

And that's it!...

-----------
Sponsored by DSpot Sp. z o.o. Contact us at info@dspot.com.pl
37 changes: 37 additions & 0 deletions declex-api/.classpath
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry excluding="**/action/builtin/**" kind="src" output="target/classes" path="src">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" path="ActiveAndroid"/>
<classpathentry kind="src" path="androidannotations-api"/>
<classpathentry kind="src" path="saripaar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="lib" path="libs/android-support-v4.jar"/>
<classpathentry kind="lib" path="libs/android.jar"/>
<classpathentry kind="lib" path="libs/support-annotations-24.0.0.jar"/>
<classpathentry kind="lib" path="libs/jcodemodel-2.8.0.jar"/>
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/classes" path="target/processed">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
</classpath>
4 changes: 4 additions & 0 deletions declex-api/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/bin
/.settings
/.declex
/target/
40 changes: 40 additions & 0 deletions declex-api/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>declex-api</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
<linkedResources>
<link>
<name>ActiveAndroid</name>
<type>2</type>
<locationURI>WORKSPACE_LOC/Dependencies/ActiveAndroid/src</locationURI>
</link>
<link>
<name>androidannotations-api</name>
<type>2</type>
<locationURI>WORKSPACE_LOC/Dependencies/androidannotations/AndroidAnnotations/androidannotations-core/androidannotations-api/src/main/java</locationURI>
</link>
<link>
<name>saripaar</name>
<type>2</type>
<locationURI>WORKSPACE_LOC/Dependencies/saripaar/saripaar/src/main/java</locationURI>
</link>
</linkedResources>
</projectDescription>
91 changes: 91 additions & 0 deletions declex-api/build.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2016 DSpot Sp. z o.o
Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this file except in compliance with the License. You may obtain a copy of
the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed To in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations under
the License.
-->

<project name="declex-api" default="jar">

<property name="project.version" value="1.0"/>

<property environment="env"/>
<property name="target" value="1.7"/>
<property name="source" value="1.7"/>

<property name="project.path" location="."/>

<property name="declex.processor.path" value="${project.path}/../declex/bin/declex-v${project.version}.jar;${project.path}/resources"/>
<property name="class.path" value="${project.path}/libs/adroid-support-v4.jar;${project.path}/libs/android.jar;${project.path}/target/classes"/>

<property name="processed" location="target/processed"/>
<property name="generated-src" location="target/generated-src"/>

<target name="jar">

<propertyfile file="resources/${ant.project.name}.properties">
<entry key="version" value="${project.version}"/>
</propertyfile>

<delete dir="${processed}" />
<delete dir="${generated-src}" />
<mkdir dir="${processed}" />
<mkdir dir="${generated-src}" />

<echo>Compiling Built-In Actions ${class.path}</echo>
<javac srcdir="src/com/dspot/declex/api/action/builtin"
destdir="${processed}"
classpath="${class.path}"
debug="on"
source="1.7"
target="1.7">
<compilerarg line="-processorpath ${declex.processor.path}"/>
<compilerarg line="-s ${generated-src}"/>
<compilerarg line="-XprintProcessorInfo"/>
<compilerarg line="-XprintRounds"/>
<compilerarg line="-Ainternal=true"/>
</javac>

<!-- This is only for local testing, the generated file should not be distributed -->
<jar destfile="bin/${ant.project.name}.jar" filesetmanifest="mergewithoutmain">

<fileset dir="target/classes" excludes="**/action/builtin/**"/>
<fileset dir="target/processed"/>
<fileset dir="resources"/>

<zipfileset excludes="META-INF/**" src="libs/eventbus-3.0.0.jar"/>
<zipfileset excludes="META-INF/**" src="libs/okhttp-3.4.1.jar"/>
<zipfileset excludes="META-INF/**" src="libs/okio-1.9.0.jar"/>
<zipfileset excludes="META-INF/**" src="libs/picasso-2.5.2.jar"/>
</jar>

<!-- To copy the file to the test environment -->
<!--
<copy
file="bin/${ant.project.name}.jar"
todir="C:\Dropbox\Work\ManifestMedia\TeacherBox\teacherbox\app\libs"/>
<copy
file="bin/${ant.project.name}.jar"
todir="C:\Dropbox\Work\Horeko\hpa-android\app\libs"/>
<copy
file="bin/${ant.project.name}.jar"
todir="C:\Dropbox\Work\Plantao\plantao\app\libs"/>
<copy
file="bin/${ant.project.name}.jar"
todir="C:\Dropbox\Android\DecleX\Examples\Expenses Tracker\ExpensesManager\app\libs"/>
-->
</target>

</project>
Binary file added declex-api/libs/android-support-v4.jar
Binary file not shown.
Binary file added declex-api/libs/android.jar
Binary file not shown.
Binary file added declex-api/libs/eventbus-3.0.0.jar
Binary file not shown.
Binary file added declex-api/libs/jcodemodel-2.8.0.jar
Binary file not shown.
Binary file added declex-api/libs/okhttp-3.4.1.jar
Binary file not shown.
Binary file added declex-api/libs/okio-1.9.0.jar
Binary file not shown.
Binary file added declex-api/libs/picasso-2.5.2.jar
Binary file not shown.
Binary file added declex-api/libs/support-annotations-24.0.0.jar
Binary file not shown.
100 changes: 100 additions & 0 deletions declex-api/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
<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/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<groupId>com.dspot</groupId>
<artifactId>declex-api</artifactId>
<version>1.0</version>
<name>DecleX API</name>
<description>DecleX Framework API</description>

<build>
<sourceDirectory>src</sourceDirectory>
<resources>
<resource>
<directory>resources</directory>
</resource>

<!-- ANT Task should be run to insert here the Action classes files -->
<!-- TODO: Run the processor within maven -->
<resource>
<directory>target/processed</directory>
</resource>
</resources>

<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<excludes>
<exclude>**/action/builtin/**</exclude>
</excludes>
</configuration>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>verify</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>

</build>

<organization>
<name>DSpot Sp. z o.o</name>
<url>http://www.dspot.com.pl</url>
</organization>

<distributionManagement>
<repository>
<id>bintray-declex</id>
<url>https://api.bintray.com/maven/dspot/declex/declex-api/;publish=1</url>
</repository>
</distributionManagement>

<dependencies>
<dependency>
<groupId>com.helger</groupId>
<artifactId>jcodemodel</artifactId>
<version>2.8.0</version>
<scope>compile</scope>
</dependency>

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>com.squareup.picasso</groupId>
<artifactId>picasso</artifactId>
<version>2.5.2</version>
</dependency>
<dependency>
<groupId>org.greenrobot</groupId>
<artifactId>eventbus</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>3.4.2</version>
</dependency>

</dependencies>

</project>
Loading

0 comments on commit 7dc2be3

Please sign in to comment.