From: <to...@us...> - 2007-02-15 21:14:00
|
Revision: 64 http://techne-dev.svn.sourceforge.net/techne-dev/?rev=64&view=rev Author: tonit Date: 2007-02-15 13:13:59 -0800 (Thu, 15 Feb 2007) Log Message: ----------- transfered project to maven2/maven-bundle-plugin project Added Paths: ----------- sandbox/tonit/techne.samples.audio.samplemusic/.classpath sandbox/tonit/techne.samples.audio.samplemusic/.project sandbox/tonit/techne.samples.audio.samplemusic/pom.xml sandbox/tonit/techne.samples.audio.samplemusic/resources/ sandbox/tonit/techne.samples.audio.samplemusic/resources/TotallyFreeSong.mp3 sandbox/tonit/techne.samples.audio.samplemusic/src/ sandbox/tonit/techne.samples.audio.samplemusic/src/main/ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/Activator.java sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/SampleMusicSource.java sandbox/tonit/techne.samples.audio.samplemusic/src/test/ sandbox/tonit/techne.samples.audio.samplemusic/src/test/java/ sandbox/tonit/techne.samples.audio.samplemusic/src/test/java/techne/ sandbox/tonit/techne.samples.audio.samplemusic/src/test/java/techne/AppTest.java sandbox/tonit/techne.samples.audio.samplemusic/target/ Added: sandbox/tonit/techne.samples.audio.samplemusic/.classpath =================================================================== --- sandbox/tonit/techne.samples.audio.samplemusic/.classpath (rev 0) +++ sandbox/tonit/techne.samples.audio.samplemusic/.classpath 2007-02-15 21:13:59 UTC (rev 64) @@ -0,0 +1,13 @@ +<classpath> + <classpathentry kind="src" path="src/main/java"/> + <classpathentry kind="src" path="src/test/java" output="target/test-classes"/> + <classpathentry kind="output" path="target/classes"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> + <classpathentry kind="var" path="M2_REPO/org/apache/felix/org.osgi.compendium/0.9.0-incubator-SNAPSHOT/org.osgi.compendium-0.9.0-incubator-SNAPSHOT.jar"/> + <classpathentry kind="var" path="M2_REPO/org/javazoom/org.javazoom.jl/1.0-SNAPSHOT/org.javazoom.jl-1.0-SNAPSHOT.jar"/> + <classpathentry kind="var" path="M2_REPO/org/apache/felix/javax.servlet/0.9.0-incubator-SNAPSHOT/javax.servlet-0.9.0-incubator-SNAPSHOT.jar"/> + <classpathentry kind="var" path="M2_REPO/org/apache/felix/org.apache.felix.shell/0.9.0-incubator-SNAPSHOT/org.apache.felix.shell-0.9.0-incubator-SNAPSHOT.jar"/> + <classpathentry kind="var" path="M2_REPO/org/apache/felix/org.osgi.core/0.9.0-incubator-SNAPSHOT/org.osgi.core-0.9.0-incubator-SNAPSHOT.jar"/> + <classpathentry kind="var" path="M2_REPO/org/apache/felix/org.osgi.foundation/0.9.0-incubator-SNAPSHOT/org.osgi.foundation-0.9.0-incubator-SNAPSHOT.jar"/> + <classpathentry kind="var" path="M2_REPO/junit/junit/3.8.1/junit-3.8.1.jar"/> +</classpath> \ No newline at end of file Added: sandbox/tonit/techne.samples.audio.samplemusic/.project =================================================================== --- sandbox/tonit/techne.samples.audio.samplemusic/.project (rev 0) +++ sandbox/tonit/techne.samples.audio.samplemusic/.project 2007-02-15 21:13:59 UTC (rev 64) @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>techne.samples.audio.player</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> Added: sandbox/tonit/techne.samples.audio.samplemusic/pom.xml =================================================================== --- sandbox/tonit/techne.samples.audio.samplemusic/pom.xml (rev 0) +++ sandbox/tonit/techne.samples.audio.samplemusic/pom.xml 2007-02-15 21:13:59 UTC (rev 64) @@ -0,0 +1,51 @@ +<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> + <groupId>techne</groupId> + <artifactId>techne.samples.audio.samplemusic</artifactId> + <packaging>bundle</packaging> + <version>1.0</version> + <name>techne.samples.audio.samplemusic</name> + <url>http://maven.apache.org</url> + <dependencies> + <dependency> + <groupId>techne</groupId> + <artifactId>techne.samples.audio.player</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>org.apache.felix</groupId> + <artifactId>org.osgi.core</artifactId> + <version>0.9.0-incubator-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>org.apache.felix</groupId> + <artifactId>org.osgi.compendium</artifactId> + <version>0.9.0-incubator-SNAPSHOT</version> + </dependency> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>3.8.1</version> + <scope>test</scope> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.apache.felix</groupId> + <artifactId>maven-bundle-plugin</artifactId> + <extensions>true</extensions> + <configuration> + <instructions> + <Bundle-SymbolicName>techne.samples.audio.samplemusic</Bundle-SymbolicName> + <Private-Package>techne.audio.samplemusic</Private-Package> + <Bundle-Activator>techne.audio.samplemusic.Activator</Bundle-Activator> + <Service-Component>techne.audio.samplemusic.SampleMusicSource;provide:=techne.audio.player.MusicSource</Service-Component> + <Include-Resource>resources/TotallyFreeSong.mp3</Include-Resource> + </instructions> + </configuration> + </plugin> + </plugins> + </build> +</project> Added: sandbox/tonit/techne.samples.audio.samplemusic/resources/TotallyFreeSong.mp3 =================================================================== (Binary files differ) Property changes on: sandbox/tonit/techne.samples.audio.samplemusic/resources/TotallyFreeSong.mp3 ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/Activator.java =================================================================== --- sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/Activator.java (rev 0) +++ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/Activator.java 2007-02-15 21:13:59 UTC (rev 64) @@ -0,0 +1,16 @@ +package techne.audio.samplemusic; + +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; + +public class Activator implements BundleActivator { + + public void start(BundleContext ctx) throws Exception { + System.out.println("Loading samplemusic support for techne.audio"); + } + + public void stop(BundleContext arg0) throws Exception { + System.out.println("Removing samplemusic support for techne.audio"); + } + +} Added: sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/SampleMusicSource.java =================================================================== --- sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/SampleMusicSource.java (rev 0) +++ sandbox/tonit/techne.samples.audio.samplemusic/src/main/java/techne/audio/samplemusic/SampleMusicSource.java 2007-02-15 21:13:59 UTC (rev 64) @@ -0,0 +1,78 @@ +package techne.audio.samplemusic; + +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; + +import org.osgi.service.component.ComponentContext; + +import techne.audio.player.MusicSource; + +/** + * Provides a sample MusicSource. MP3 Files are included right in the bundle. + * + * Its Self-Contained (does not require network, local mp3s or itunes) + * + * @author tmenzel + * + */ +public class SampleMusicSource implements MusicSource { + + boolean repeat = false; + private URL url; + // count of next() requests + int count = 0; + + public SampleMusicSource() { + } + + public boolean hasNext() { + return (repeat || count == 0); + } + + public InputStream next() { + // double check locking to make this boring sample more educative ;-) + if (hasNext()) { + synchronized (this) { + if (hasNext()) { + count++; + try { + // you get always the same for this example either.. + System.out.println("MusicSource: giving " + + url.toExternalForm()); + return url.openConnection().getInputStream(); + } catch (IOException e) { + e.printStackTrace(); + throw new RuntimeException(e); + } + } + } + } + return null; + } + + public void setRepeat(boolean rep) { + this.repeat = rep; + } + + public InputStream current() { + try { + return url.openConnection().getInputStream(); + } catch (IOException e) { + e.printStackTrace(); + throw new RuntimeException(e); + } + } + + // Declarative Services methods.. + protected void activate(ComponentContext context) { + System.out.println("Started sample MusicSource for techne.audio"); + url = context.getBundleContext().getBundle().getResource( + "TotallyFreeSong.mp3"); + } + + public void deactivate(ComponentContext context) throws Exception { + System.out.println("Stopped sample MusicSource for techne.audio"); + } + +} Added: sandbox/tonit/techne.samples.audio.samplemusic/src/test/java/techne/AppTest.java =================================================================== --- sandbox/tonit/techne.samples.audio.samplemusic/src/test/java/techne/AppTest.java (rev 0) +++ sandbox/tonit/techne.samples.audio.samplemusic/src/test/java/techne/AppTest.java 2007-02-15 21:13:59 UTC (rev 64) @@ -0,0 +1,38 @@ +package techne; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +/** + * Unit test for simple App. + */ +public class AppTest + extends TestCase +{ + /** + * Create the test case + * + * @param testName name of the test case + */ + public AppTest( String testName ) + { + super( testName ); + } + + /** + * @return the suite of tests being tested + */ + public static Test suite() + { + return new TestSuite( AppTest.class ); + } + + /** + * Rigourous Test :-) + */ + public void testApp() + { + assertTrue( true ); + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |