You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by jb...@apache.org on 2014/09/04 22:12:33 UTC

svn commit: r1622552 - in /servicemix/smx4/bundles/trunk: ./ javaewah-0.8.12/ javaewah-0.8.12/src/ javaewah-0.8.12/src/main/ javaewah-0.8.12/src/main/resources/ javaewah-0.8.12/src/main/resources/OSGI-INF/

Author: jbonofre
Date: Thu Sep  4 20:12:33 2014
New Revision: 1622552

URL: http://svn.apache.org/r1622552
Log:
[SMX4-1848] Create OSGi bundle for JavaEWAH 0.8.12

Added:
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/pom.xml
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/OSGI-INF/
    servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/OSGI-INF/bundle.info
Modified:
    servicemix/smx4/bundles/trunk/pom.xml

Added: servicemix/smx4/bundles/trunk/javaewah-0.8.12/pom.xml
URL: http://svn.apache.org/viewvc/servicemix/smx4/bundles/trunk/javaewah-0.8.12/pom.xml?rev=1622552&view=auto
==============================================================================
--- servicemix/smx4/bundles/trunk/javaewah-0.8.12/pom.xml (added)
+++ servicemix/smx4/bundles/trunk/javaewah-0.8.12/pom.xml Thu Sep  4 20:12:33 2014
@@ -0,0 +1,99 @@
+<?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/xsd/maven-4.0.0.xsd">
+
+    <!--
+
+        Licensed to the Apache Software Foundation (ASF) under one or more
+        contributor license agreements.  See the NOTICE file distributed with
+        this work for additional information regarding copyright ownership.
+        The ASF licenses this file to You 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.
+    -->
+
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.servicemix.bundles</groupId>
+        <artifactId>bundles-pom</artifactId>
+        <version>11</version>
+        <relativePath>../bundles-pom/pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.servicemix.bundles</groupId>
+    <artifactId>org.apache.servicemix.bundles.javaewah</artifactId>
+    <version>0.8.12_1-SNAPSHOT</version>
+    <packaging>bundle</packaging>
+    <name>Apache ServiceMix :: Bundles :: ${pkgArtifactId}</name>
+    <description>This OSGi bundle wraps ${pkgArtifactId} ${pkgVersion} jar file.</description>
+
+    <properties>
+        <pkgGroupId>com.googlecode.javaewah</pkgGroupId>
+        <pkgArtifactId>JavaEWAH</pkgArtifactId>
+        <pkgVersion>0.8.12</pkgVersion>
+        <servicemix.osgi.export.pkg>
+            com.googlecode.javaewah
+        </servicemix.osgi.export.pkg>
+        <servicemix.osgi.import.pkg>
+
+        </servicemix.osgi.import.pkg>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>${pkgGroupId}</groupId>
+            <artifactId>${pkgArtifactId}</artifactId>
+            <version>${pkgVersion}</version>
+        </dependency>
+
+        <!-- sources -->
+        <dependency>
+            <groupId>${pkgGroupId}</groupId>
+            <artifactId>${pkgArtifactId}</artifactId>
+            <version>${pkgVersion}</version>
+            <classifier>sources</classifier>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-shade-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>shade</goal>
+                        </goals>
+                        <configuration>
+                            <artifactSet>
+                                <includes>
+                                    <include>${pkgGroupId}:${pkgArtifactId}</include>
+                                </includes>
+                            </artifactSet>
+                            <filters>
+                                <filter>
+                                    <artifact>${pkgGroupId}:${pkgArtifactId}</artifact>
+                                    <excludes>
+                                        <exclude>**/*</exclude>
+                                    </excludes>
+                                </filter>
+                            </filters>
+                            <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
+                            <createDependencyReducedPom>true</createDependencyReducedPom>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>

Added: servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/OSGI-INF/bundle.info
URL: http://svn.apache.org/viewvc/servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/OSGI-INF/bundle.info?rev=1622552&view=auto
==============================================================================
--- servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/OSGI-INF/bundle.info (added)
+++ servicemix/smx4/bundles/trunk/javaewah-0.8.12/src/main/resources/OSGI-INF/bundle.info Thu Sep  4 20:12:33 2014
@@ -0,0 +1,32 @@
+\u001B[1mSYNOPSIS\u001B[0m
+    ${project.description}
+
+    Original Maven URL:
+        \u001B[33mmvn:${pkgGroupId}/${pkgArtifactId}/${pkgVersion}\u001B[0m
+
+\u001B[1mDESCRIPTION\u001B[0m
+	The bit array data structure is implemented in Java as the BitSet class. Unfortunately, this fails to scale
+	without compression.
+
+    JavaEWAH is a word-aligned compressed variant of the Java bitset class. It uses a 64-bit run-length encoding (RLE)
+    compression scheme. We trade-off some compression for better processing speed. We also have a 32-bit version which
+    compresses better, but is not as fast.
+
+    In general, the goal of word-aligned compression is not to achieve the best compression, but rather to improve query
+    processing time. Hence, we try to save CPU cycles, maybe at the expense of storage. However, the EWAH scheme we
+    implemented is always more efficient storage-wise than an uncompressed bitmap as implemented in the BitSet class).
+    Unlike some alternatives, javaewah does not rely on a patented scheme.
+
+    It includes exhaustive unit testing. As of November 2011, Apache Maven is used to build and validate the releases.
+    (Building the source code with javac remains trivial).
+
+    Usage:
+
+                        // set bits at pos. 0, 2, 64, and 1<<30 to value "true" (others are false)
+                        EWAHCompressedBitmap ewahBitmap1 = EWAHCompressedBitmap.bitmapOf(0,2,64,1<<30);
+                        EWAHCompressedBitmap ewahBitmap2 = EWAHCompressedBitmap.bitmapOf(1,3,64,1<<30);
+                        EWAHCompressedBitmap xorbitmap = EWAHCompressedBitmap.xor(ewahBitmap1,ewahBitmap2);
+                        int[] setbits = xorbitmap.toArray();// which bits are set?
+
+\u001B[1mSEE ALSO\u001B[0m
+    \u001B[36mhttp://code.google.com/p/javaewah/\u001B[0m

Modified: servicemix/smx4/bundles/trunk/pom.xml
URL: http://svn.apache.org/viewvc/servicemix/smx4/bundles/trunk/pom.xml?rev=1622552&r1=1622551&r2=1622552&view=diff
==============================================================================
--- servicemix/smx4/bundles/trunk/pom.xml (original)
+++ servicemix/smx4/bundles/trunk/pom.xml Thu Sep  4 20:12:33 2014
@@ -90,6 +90,7 @@
         <module>swagger-core-1.3.7</module>
         <module>swagger-jaxrs-1.3.7</module>
         <module>jedis-2.5.2</module>
+        <module>javaewah-0.8.12</module>
     </modules>
 
 </project>