[jboss-cvs] JBoss Messaging SVN: r3749 - in projects/jaio/trunk/jaio/native: src and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Feb 20 18:15:25 EST 2008
Author: clebert.suconic at jboss.com
Date: 2008-02-20 18:15:24 -0500 (Wed, 20 Feb 2008)
New Revision: 3749
Added:
projects/jaio/trunk/jaio/native/.cproject
projects/jaio/trunk/jaio/native/.project
Modified:
projects/jaio/trunk/jaio/native/src/AIOController.cpp
projects/jaio/trunk/jaio/native/src/AIOController.h
projects/jaio/trunk/jaio/native/src/DataManager.h
projects/jaio/trunk/jaio/native/src/FileOutput.cpp
projects/jaio/trunk/jaio/native/src/FileOutput.h
projects/jaio/trunk/jaio/native/src/LibAIOController.cpp
projects/jaio/trunk/jaio/native/src/org_jboss_jaio_libaioimpl_LibAIOController.h
Log:
Logging
Added: projects/jaio/trunk/jaio/native/.cproject
===================================================================
--- projects/jaio/trunk/jaio/native/.cproject (rev 0)
+++ projects/jaio/trunk/jaio/native/.cproject 2008-02-20 23:15:24 UTC (rev 3749)
@@ -0,0 +1,618 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?fileVersion 4.0.0?>
+
+<cproject>
+<storageModule moduleId="org.eclipse.cdt.core.settings">
+<cconfiguration id="cdt.managedbuild.config.gnu.so.debug.754887411">
+<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.so.debug.754887411" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+<externalSettings>
+<externalSetting>
+<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/native"/>
+<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="Debug"/>
+</externalSetting>
+</externalSettings>
+<extensions>
+<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+</extensions>
+</storageModule>
+<storageModule moduleId="cdtBuildSystem" version="4.0.0">
+<configuration artifactExtension="so" artifactName="native" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.so.debug.754887411" name="Debug" parent="cdt.managedbuild.config.gnu.so.debug">
+<folderInfo id="cdt.managedbuild.config.gnu.so.debug.754887411." name="/" resourcePath="">
+<toolChain id="cdt.managedbuild.toolchain.gnu.so.debug.1632798896" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.so.debug">
+<targetPlatform id="cdt.managedbuild.target.gnu.platform.so.debug.1933901845" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.so.debug"/>
+<builder buildPath="${workspace_loc:/native/Debug}" id="cdt.managedbuild.target.gnu.builder.so.debug.1989170453" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.so.debug"/>
+<tool id="cdt.managedbuild.tool.gnu.archiver.base.1618233611" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
+<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.so.debug.1973033651" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.so.debug">
+<option id="gnu.cpp.compiler.so.debug.option.optimization.level.163689516" name="Optimization Level" superClass="gnu.cpp.compiler.so.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
+<option id="gnu.cpp.compiler.so.debug.option.debugging.level.192407483" name="Debug Level" superClass="gnu.cpp.compiler.so.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
+<option id="gnu.cpp.compiler.option.include.paths.526331600" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
+<listOptionValue builtIn="false" value="/usr/share/jdk1.5.0_13/include"/>
+<listOptionValue builtIn="false" value="/usr/share/jdk1.5.0_13/include/linux"/>
+</option>
+<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.382520559" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.c.compiler.so.debug.1538168967" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.so.debug">
+<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.so.debug.option.optimization.level.1107810245" name="Optimization Level" superClass="gnu.c.compiler.so.debug.option.optimization.level" valueType="enumerated"/>
+<option id="gnu.c.compiler.so.debug.option.debugging.level.1251792299" name="Debug Level" superClass="gnu.c.compiler.so.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
+<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.164845559" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.c.linker.so.debug.1236235778" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.so.debug">
+<option defaultValue="true" id="gnu.c.link.so.debug.option.shared.1705171464" name="Shared (-shared)" superClass="gnu.c.link.so.debug.option.shared" valueType="boolean"/>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.cpp.linker.so.debug.1794075307" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.so.debug">
+<option defaultValue="true" id="gnu.cpp.link.so.debug.option.shared.2126393086" name="Shared (-shared)" superClass="gnu.cpp.link.so.debug.option.shared" valueType="boolean"/>
+<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.192980717" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+<additionalInput kind="additionalinput" paths="$(LIBS)"/>
+</inputType>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.assembler.so.debug.184544849" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.so.debug">
+<inputType id="cdt.managedbuild.tool.gnu.assembler.input.306974332" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+</tool>
+</toolChain>
+</folderInfo>
+</configuration>
+</storageModule>
+<storageModule moduleId="scannerConfiguration">
+<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="makefileGenerator">
+<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.754887411;cdt.managedbuild.config.gnu.so.debug.754887411.;cdt.managedbuild.tool.gnu.c.compiler.so.debug.1538168967;cdt.managedbuild.tool.gnu.c.compiler.input.164845559">
+<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="makefileGenerator">
+<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+</scannerConfigBuildInfo>
+<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.754887411;cdt.managedbuild.config.gnu.so.debug.754887411.;cdt.managedbuild.tool.gnu.cpp.compiler.so.debug.1973033651;cdt.managedbuild.tool.gnu.cpp.compiler.input.382520559">
+<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="makefileGenerator">
+<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+</scannerConfigBuildInfo>
+</storageModule>
+<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
+</cconfiguration>
+<cconfiguration id="cdt.managedbuild.config.gnu.so.release.1948014977">
+<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.so.release.1948014977" moduleId="org.eclipse.cdt.core.settings" name="Release">
+<externalSettings>
+<externalSetting>
+<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/native"/>
+<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="Release"/>
+</externalSetting>
+</externalSettings>
+<extensions>
+<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+</extensions>
+</storageModule>
+<storageModule moduleId="cdtBuildSystem" version="4.0.0">
+<configuration artifactExtension="so" artifactName="native" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.sharedLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.sharedLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.so.release.1948014977" name="Release" parent="cdt.managedbuild.config.gnu.so.release">
+<folderInfo id="cdt.managedbuild.config.gnu.so.release.1948014977." name="/" resourcePath="">
+<toolChain id="cdt.managedbuild.toolchain.gnu.so.release.679940828" name="Linux GCC" superClass="cdt.managedbuild.toolchain.gnu.so.release">
+<targetPlatform id="cdt.managedbuild.target.gnu.platform.so.release.333696725" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.so.release"/>
+<builder buildPath="${workspace_loc:/native/Release}" id="cdt.managedbuild.target.gnu.builder.so.release.1760551071" managedBuildOn="true" name="Gnu Make Builder.Release" superClass="cdt.managedbuild.target.gnu.builder.so.release"/>
+<tool id="cdt.managedbuild.tool.gnu.archiver.base.1183233052" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.base"/>
+<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.so.release.1612503496" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.so.release">
+<option id="gnu.cpp.compiler.so.release.option.optimization.level.1602533940" superClass="gnu.cpp.compiler.so.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
+<option id="gnu.cpp.compiler.so.release.option.debugging.level.1653404383" superClass="gnu.cpp.compiler.so.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
+<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1081693189" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.c.compiler.so.release.508755606" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.so.release">
+<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.so.release.option.optimization.level.558731711" superClass="gnu.c.compiler.so.release.option.optimization.level" valueType="enumerated"/>
+<option id="gnu.c.compiler.so.release.option.debugging.level.542588284" superClass="gnu.c.compiler.so.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
+<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1170773485" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.c.linker.so.release.1495215691" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.so.release">
+<option defaultValue="true" id="gnu.c.link.so.release.option.shared.260973625" superClass="gnu.c.link.so.release.option.shared" valueType="boolean"/>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.cpp.linker.so.release.670506171" name="GCC C++ Linker" superClass="cdt.managedbuild.tool.gnu.cpp.linker.so.release">
+<option defaultValue="true" id="gnu.cpp.link.so.release.option.shared.1001988594" superClass="gnu.cpp.link.so.release.option.shared" valueType="boolean"/>
+<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.720268649" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+<additionalInput kind="additionalinput" paths="$(LIBS)"/>
+</inputType>
+</tool>
+<tool id="cdt.managedbuild.tool.gnu.assembler.so.release.832794340" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.so.release">
+<inputType id="cdt.managedbuild.tool.gnu.assembler.input.127046549" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+</tool>
+</toolChain>
+</folderInfo>
+</configuration>
+</storageModule>
+<storageModule moduleId="scannerConfiguration">
+<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="makefileGenerator">
+<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.754887411;cdt.managedbuild.config.gnu.so.debug.754887411.;cdt.managedbuild.tool.gnu.c.compiler.so.debug.1538168967;cdt.managedbuild.tool.gnu.c.compiler.input.164845559">
+<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="makefileGenerator">
+<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+</scannerConfigBuildInfo>
+<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.754887411;cdt.managedbuild.config.gnu.so.debug.754887411.;cdt.managedbuild.tool.gnu.cpp.compiler.so.debug.1973033651;cdt.managedbuild.tool.gnu.cpp.compiler.input.382520559">
+<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="specsFile">
+<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
+<buildOutputProvider>
+<openAction enabled="true" filePath=""/>
+<parser enabled="true"/>
+</buildOutputProvider>
+<scannerInfoProvider id="makefileGenerator">
+<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
+<parser enabled="true"/>
+</scannerInfoProvider>
+</profile>
+</scannerConfigBuildInfo>
+</storageModule>
+<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
+<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+</cconfiguration>
+</storageModule>
+<storageModule moduleId="cdtBuildSystem" version="4.0.0">
+<project id="native.cdt.managedbuild.target.gnu.so.1442597088" name="Shared Library" projectType="cdt.managedbuild.target.gnu.so"/>
+</storageModule>
+</cproject>
Added: projects/jaio/trunk/jaio/native/.project
===================================================================
--- projects/jaio/trunk/jaio/native/.project (rev 0)
+++ projects/jaio/trunk/jaio/native/.project 2008-02-20 23:15:24 UTC (rev 3749)
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>native</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
+ <triggers>clean,full,incremental,</triggers>
+ <arguments>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
+ <value>clean</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableCleanBuild</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>?name?</key>
+ <value></value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.append_environment</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.stopOnError</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildCommand</key>
+ <value>make</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.contents</key>
+ <value>org.eclipse.cdt.make.core.activeConfigSettings</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildLocation</key>
+ <value>${workspace_loc:/native/Debug}</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableAutoBuild</key>
+ <value>false</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.enableFullBuild</key>
+ <value>true</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.buildArguments</key>
+ <value></value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.fullBuildTarget</key>
+ <value>all</value>
+ </dictionary>
+ <dictionary>
+ <key>org.eclipse.cdt.make.core.autoBuildTarget</key>
+ <value>all</value>
+ </dictionary>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.cdt.core.ccnature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
+ <nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
+ <nature>org.eclipse.cdt.core.cnature</nature>
+ </natures>
+</projectDescription>
Modified: projects/jaio/trunk/jaio/native/src/AIOController.cpp
===================================================================
--- projects/jaio/trunk/jaio/native/src/AIOController.cpp 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/AIOController.cpp 2008-02-20 23:15:24 UTC (rev 3749)
@@ -20,20 +20,47 @@
#include <string>
#include "AIOController.h"
+#include "FileOutput.h"
#include "PageManager.h"
+#include "JavaUtilities.h"
+#include "JAIODatatypes.h"
-AIOController::AIOController(std::string fileName) : fileOutput(fileName)
+AIOController::AIOController(std::string fileName, int maxIO) : logger(0), fileOutput(fileName, this, maxIO)
{
manager = (DataManager *)&fileOutput;
usingPaging = false;
}
-AIOController::AIOController(std::string fileName, int pageSize) : fileOutput(fileName)
+void AIOController::log(THREAD_CONTEXT threadContext, short level, char * message)
{
- manager = new PageManager(pageSize, &fileOutput);
- usingPaging = true;
+ jmethodID methodID = 0;
+
+ switch (level)
+ {
+ case 0: methodID = loggerError; break;
+ case 1: methodID = loggerWarn; break;
+ case 2: methodID = loggerInfo; break;
+ case 3: methodID = loggerDebug; break;
+ default: methodID = loggerDebug; break;
+ }
+
+#ifdef DEBUG
+ fprintf (stderr,"Callig log methodID=%ld, message=%s, logger=%ld, threadContext = %ld\n", (long) methodID, message, (long) logger, (long) threadContext); fflush(stderr);
+#endif
+ threadContext->CallVoidMethod(logger,methodID,threadContext->NewStringUTF(message));
}
+
+void AIOController::destroy(THREAD_CONTEXT context)
+{
+ context->DeleteGlobalRef(logger);
+}
+
+/*
+ * level = 0-error, 1-warn, 2-info, 3-debug
+ */
+
+
AIOController::~AIOController()
{
}
Modified: projects/jaio/trunk/jaio/native/src/AIOController.h
===================================================================
--- projects/jaio/trunk/jaio/native/src/AIOController.h 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/AIOController.h 2008-02-20 23:15:24 UTC (rev 3749)
@@ -34,18 +34,30 @@
jmethodID decode;
jmethodID done;
jmethodID error;
+ jobject logger;
+ jmethodID loggerError;
+ jmethodID loggerWarn;
+ jmethodID loggerDebug;
+ jmethodID loggerInfo;
+
+ /*
+ * level = 0-error, 1-warn, 2-info, 3-debug
+ */
+ void log(THREAD_CONTEXT threadContext, short level, char * message);
+
int fileHandle;
FileOutput fileOutput;
// It could be Paging or Direct File output
DataManager * manager;
+ void destroy(THREAD_CONTEXT context);
+
bool usingPaging;
- AIOController(std::string fileName, int pageSize);
- AIOController(std::string fileName);
+ AIOController(std::string fileName, int maxIO);
virtual ~AIOController();
};
#endif /*AIOCONTROLLER_H_*/
Modified: projects/jaio/trunk/jaio/native/src/DataManager.h
===================================================================
--- projects/jaio/trunk/jaio/native/src/DataManager.h 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/DataManager.h 2008-02-20 23:15:24 UTC (rev 3749)
@@ -29,7 +29,6 @@
DataManager();
virtual ~DataManager();
virtual void addData(THREAD_CONTEXT threadContext, BufferAdapter * adapter) = 0;
- virtual void validateLowRate(THREAD_CONTEXT threadContext) = 0;
virtual void pollEvents(THREAD_CONTEXT threadContext) = 0;
};
Modified: projects/jaio/trunk/jaio/native/src/FileOutput.cpp
===================================================================
--- projects/jaio/trunk/jaio/native/src/FileOutput.cpp 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/FileOutput.cpp 2008-02-20 23:15:24 UTC (rev 3749)
@@ -31,14 +31,12 @@
#include <libaio.h>
#include <fcntl.h>
#include "FileOutput.h"
+#include "AIOController.h"
#include "AIOException.h"
#include "pthread.h"
#include "LockClass.h"
-//#define SYNC
-//#define CALLBACK_THREAD
-
std::string io_error(int rc)
{
std::stringstream buffer;
@@ -52,23 +50,21 @@
}
-FileOutput::FileOutput(std::string & _fileName) : aioContext(0), filePointer(0), events(0), added(0), received(0), pollerRunning(0)
+FileOutput::FileOutput(std::string & _fileName, AIOController * _controller, int _maxIO) : aioContext(0), filePointer(0), events(0), controller(_controller), pollerRunning(0)
{
::pthread_mutex_init(&fileMutex,0);
::pthread_mutex_init(&pollerMutex,0);
+
+ maxIO = _maxIO;
fileName = _fileName;
- if (io_queue_init(MAX_IO, &aioContext))
+ if (io_queue_init(maxIO, &aioContext))
{
throw AIOException(1, "Can't initialize aio");
}
-#ifdef SYNC
- fileHandle = open(fileName.data(), O_WRONLY | O_CREAT, 0666);
-#else
- //fileHandle = open(fileName.data(), O_WRONLY | O_CREAT, 0666);
fileHandle = ::open(fileName.data(), O_WRONLY | O_CREAT | O_DIRECT, 0666);
- events = (struct io_event *)malloc (MAX_IO * sizeof (struct io_event));
-#endif
+ events = (struct io_event *)malloc (maxIO * sizeof (struct io_event));
+
if (fileHandle < 0)
{
throw AIOException(1, "Can't open file");
@@ -104,42 +100,19 @@
delete adapters;
}
-/*void FileOutput::callbackDirect(io_context_t ctx, struct iocb *iocb, long res, long res2)
+void FileOutput::stopPoller(THREAD_CONTEXT threadContext)
{
- if (res<0 || res2<0)
- {
- std::cout << io_error(res);
- std::cout <<"res = " << res << " res2 = " << res2 << "\n";
- std::cout.flush();
- }
-
- BufferAdapter * buffer = 0;
-
- memcpy (&buffer, ((char *) iocb->u.c.buf)+iocb->u.c.nbytes, sizeof (BufferAdapter *));
-
-// buffer->completeBlock();
-
- free (iocb->u.c.buf);
- free (iocb);
-// buffer->deleteRef();
-
-
-}*/
-
-
-void FileOutput::stopPoller()
-{
pollerRunning = 0;
- fprintf (stderr,"Setting poller to stop\n"); fflush(stderr);
+ controller->log(threadContext, 2,"Setting poller to stop");
// It will wait the Poller to gives up its lock
- LockClass lock(&fileMutex);
+ LockClass lock(&pollerMutex);
}
void FileOutput::pollEvents(THREAD_CONTEXT threadContext)
{
- LockClass lock(&fileMutex);
+ LockClass lock(&pollerMutex);
pollerRunning=1;
struct timespec oneSecond;
@@ -149,7 +122,7 @@
while (pollerRunning)
{
- int result = io_getevents(this->aioContext, 1, MAX_IO, events, &oneSecond);
+ int result = io_getevents(this->aioContext, 1, maxIO, events, &oneSecond);
#ifdef DEBUG
fprintf (stderr, "poll, pollerRunning=%d\n", pollerRunning); fflush(stderr);
@@ -157,7 +130,6 @@
if (result > 0)
{
- received += result;
#ifdef DEBUG
fprintf (stdout, "Received %d events\n", result);
@@ -196,21 +168,18 @@
}
}
- fprintf (stdout, "Poller finished execution\n");
- fflush(stdout);
+ controller->log(threadContext, 2, "Poller finished execution");
}
-void FileOutput::preAllocate(int blocks, size_t size)
+void FileOutput::preAllocate(THREAD_CONTEXT threadContext, int blocks, size_t size)
{
size_t currentSize = lseek (fileHandle, 0, SEEK_END);
- std::cout << "currentSize := " << currentSize << "\n";
if (currentSize >= blocks * size)
{
- std::cout << "File being reused as requested size=" << size*blocks << " is equals or lower than current file Size=" << currentSize << "\n";
- std::cout.flush();
+ controller->log(threadContext,2,"File being reused");
filePointer=0;
return;
}
@@ -249,30 +218,36 @@
// Used only when Paging is disabled (as the user have this option to opt out for Paging)
void FileOutput::addData(THREAD_CONTEXT threadContext, BufferAdapter * adapter)
{
+#ifdef TRACE
+ fprintf (stderr,"Getting size\n"); fflush(stderr);
+ fprintf (stderr,"ThreadContext:- %ld\n", (long)threadContext);
+#endif
+
int size = adapter->blockSize(threadContext);
+#ifdef TRACE
+ fprintf (stderr,"Got size\n"); fflush(stderr);
+ fprintf (stderr,"Getting lock\n"); fflush(stderr);
+#endif
- //LockClass lock (&fileMutex);
-
-
- added++;
+ LockClass * lock = new LockClass(&fileMutex);
-//#ifdef SYNC
-// void * buffer = malloc(size);
-// adapter->encode(threadContext, size, buffer);
-// int error=::write(fileHandle, buffer, size);
-//
-// if (error<0)
-// {
-// throw AIOException (21, io_error(error));
-// }
-// free(buffer);
-// error = ::fsync(fileHandle);
-// if (error)
-// {
-// throw AIOException(20, io_error(error));
-// }
-// adapter->done(threadContext);
-//#else
+#ifdef TRACE
+ fprintf (stderr,"Got lock\n"); fflush(stderr);
+#endif
+
+ filePointer+=size;
+
+#ifdef TRACE
+ fprintf (stderr,"Added Size\n"); fflush(stderr);
+#endif
+
+ delete lock;
+ lock = 0;
+
+#ifdef TRACE
+ fprintf (stderr,"Deleted Lock\n"); fflush(stderr);
+#endif
+
void * buffer = 0;
//void * buffer = malloc(size + sizeof (BufferAdapter *));
if (posix_memalign(&buffer, 512, size))
@@ -283,21 +258,15 @@
std::list<BufferAdapter *> * list = new std::list<BufferAdapter *>();
list->push_back(adapter);
+ // call encode on JNI
adapter->encode(threadContext, size, buffer);
struct iocb * iocb = new struct iocb();
::io_prep_pwrite(iocb, fileHandle, buffer, size, filePointer);
iocb->data = (void *) list;
- filePointer+=size;
- if (size > (1024*1024)) // deleteme
- {
- std::cout << "submit....."; std::cout.flush();
- }
+
int result = ::io_submit(aioContext, 1, &iocb);
- if (size > (1024*1024)) // deleteme
- {
- std::cout << "done\n"; std::cout.flush();
- }
+
if (result<0)
{
std::stringstream str;
Modified: projects/jaio/trunk/jaio/native/src/FileOutput.h
===================================================================
--- projects/jaio/trunk/jaio/native/src/FileOutput.h 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/FileOutput.h 2008-02-20 23:15:24 UTC (rev 3749)
@@ -23,12 +23,11 @@
#include <string>
#include <libaio.h>
#include <pthread.h>
-
#include "PageObserver.h"
#include "DataManager.h"
#include "JAIODatatypes.h"
-#define MAX_IO 20000
+class AIOController;
class FileOutput : public PageObserver, DataManager
{
@@ -42,14 +41,14 @@
pthread_mutex_t fileMutex;
pthread_mutex_t pollerMutex;
- int added;
- int received;
+ AIOController * controller;
bool pollerRunning;
+ int maxIO;
public:
- FileOutput(std::string & _fileName);
+ FileOutput(std::string & _fileName, AIOController * controller, int maxIO);
virtual ~FileOutput();
void completePage(THREAD_CONTEXT threadContext, long size, void *, std::list<BufferAdapter *> *);
void addData(THREAD_CONTEXT threadContext, BufferAdapter * adapter);
@@ -61,17 +60,12 @@
// Finishes the polling thread (if any) and return
- void stopPoller();
+ void stopPoller(THREAD_CONTEXT threadContext);
- void preAllocate(int numberOfBlocks, size_t size);
+ void preAllocate(THREAD_CONTEXT threadContext, int numberOfBlocks, size_t size);
- // Nothing to be done on FileOutput
void pollEvents(THREAD_CONTEXT threadContext);
- void validateLowRate(THREAD_CONTEXT )
- {
- }
-
};
#endif /*FILEOUTPUT_H_*/
Modified: projects/jaio/trunk/jaio/native/src/LibAIOController.cpp
===================================================================
--- projects/jaio/trunk/jaio/native/src/LibAIOController.cpp 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/LibAIOController.cpp 2008-02-20 23:15:24 UTC (rev 3749)
@@ -32,37 +32,45 @@
#include "JNIBufferAdapter.h"
#include "AIOException.h"
-//using namespace jbm;
-
/*
* Class: org_jboss_jaio_libaioimpl_LibAIOController
* Method: init
* Signature: (Ljava/lang/String;Ljava/lang/Class;)J
*/
-JNIEXPORT jlong JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_init__Ljava_lang_String_2Ljava_lang_Class_2
- (JNIEnv * env, jclass, jstring jstrFileName, jclass clazz)
+JNIEXPORT jlong JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_init
+ (JNIEnv * env, jclass, jstring jstrFileName, jclass callbackClass, jint maxIO, jobject logger)
{
try
{
std::string fileName = convertJavaString(env, jstrFileName);
- AIOController * controller = new AIOController(fileName);
- controller->done = env->GetMethodID(clazz,"done","()V");
+ AIOController * controller = new AIOController(fileName, (int) maxIO);
+ controller->done = env->GetMethodID(callbackClass,"done","()V");
if (!controller->done) return 0;
- controller->encode = env->GetMethodID(clazz,"encode","(Ljava/nio/ByteBuffer;)V");
+ controller->encode = env->GetMethodID(callbackClass,"encode","(Ljava/nio/ByteBuffer;)V");
if (!controller->encode) return 0;
- controller->decode = env->GetMethodID(clazz,"decode","(ILjava/nio/ByteBuffer;)V");
+ controller->decode = env->GetMethodID(callbackClass,"decode","(ILjava/nio/ByteBuffer;)V");
if (!controller->decode) return 0;
- controller->encodeSize = env->GetMethodID(clazz,"encodeSize","()I");
+ controller->encodeSize = env->GetMethodID(callbackClass,"encodeSize","()I");
if (!controller->encodeSize) return 0;
- controller->error = env->GetMethodID(clazz, "onError", "(ILjava/lang/String;)V");
+ controller->error = env->GetMethodID(callbackClass, "onError", "(ILjava/lang/String;)V");
if (!controller->error) return 0;
+
+ jclass loggerClass = env->GetObjectClass(logger);
+
+ if (!(controller->loggerDebug = env->GetMethodID(loggerClass, "debug", "(Ljava/lang/String;)V"))) return 0;
+ if (!(controller->loggerWarn = env->GetMethodID(loggerClass, "warn", "(Ljava/lang/String;)V"))) return 0;
+ if (!(controller->loggerInfo = env->GetMethodID(loggerClass, "info", "(Ljava/lang/String;)V"))) return 0;
+ if (!(controller->loggerError = env->GetMethodID(loggerClass, "error", "(Ljava/lang/String;)V"))) return 0;
+
+ controller->logger = env->NewGlobalRef(logger);
+
+ controller->log(env,4, "Controller initialized");
-
return (jlong)controller;
}
catch (AIOException& e){
@@ -71,43 +79,6 @@
}
}
-/*
- * Class: org_jboss_jaio_libaioimpl_LibAIOController
- * Method: init
- * Signature: (Ljava/lang/String;ILjava/lang/Class;)J
- */
-JNIEXPORT jlong JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_init__Ljava_lang_String_2ILjava_lang_Class_2
- (JNIEnv * env, jclass, jstring jstrFileName, jint pageSize, jclass clazz)
-{
- try
- {
- std::string fileName = convertJavaString(env, jstrFileName);
-
- AIOController * controller = new AIOController(fileName, pageSize);
- controller->done = env->GetMethodID(clazz,"done","()V");
- if (!controller->done) return 0;
-
- controller->encode = env->GetMethodID(clazz,"encode","(Ljava/nio/ByteBuffer;)V");
- if (!controller->done) return 0;
-
- controller->decode = env->GetMethodID(clazz,"decode","(ILjava/nio/ByteBuffer;)V");
- if (!controller->done) return 0;
-
- controller->encodeSize = env->GetMethodID(clazz,"encodeSize","()I");
- if (!controller->done) return 0;
-
- controller->error = env->GetMethodID(clazz,"onError","(ILjava/lang/String;)V");
-
- return (jlong)controller;
- }
- catch (AIOException& e){
- throwException(env, "java/lang/RuntimeException", e.what());
- return 0;
- }
-
-}
-
-
JNIEXPORT void JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_append
(JNIEnv *env, jclass, jlong controllerAddress, jobject obj)
{
@@ -147,7 +118,8 @@
try
{
AIOController * controller = (AIOController *) controllerAddress;
- controller->fileOutput.stopPoller();
+ controller->fileOutput.stopPoller(env);
+ controller->destroy(env);
delete controller;
}
catch (AIOException& e)
@@ -162,7 +134,7 @@
try
{
AIOController * controller = (AIOController *) controllerAddress;
- controller->fileOutput.preAllocate(blocks, size);
+ controller->fileOutput.preAllocate(env, blocks, size);
}
catch (AIOException& e)
{
Modified: projects/jaio/trunk/jaio/native/src/org_jboss_jaio_libaioimpl_LibAIOController.h
===================================================================
--- projects/jaio/trunk/jaio/native/src/org_jboss_jaio_libaioimpl_LibAIOController.h 2008-02-20 21:44:11 UTC (rev 3748)
+++ projects/jaio/trunk/jaio/native/src/org_jboss_jaio_libaioimpl_LibAIOController.h 2008-02-20 23:15:24 UTC (rev 3749)
@@ -7,24 +7,17 @@
#ifdef __cplusplus
extern "C" {
#endif
+/* Inaccessible static: log */
/*
* Class: org_jboss_jaio_libaioimpl_LibAIOController
* Method: init
- * Signature: (Ljava/lang/String;Ljava/lang/Class;)J
+ * Signature: (Ljava/lang/String;Ljava/lang/Class;ILorg/jboss/jaio/api/logging/Logger;)J
*/
-JNIEXPORT jlong JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_init__Ljava_lang_String_2Ljava_lang_Class_2
- (JNIEnv *, jclass, jstring, jclass);
+JNIEXPORT jlong JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_init
+ (JNIEnv *, jclass, jstring, jclass, jint, jobject);
/*
* Class: org_jboss_jaio_libaioimpl_LibAIOController
- * Method: init
- * Signature: (Ljava/lang/String;ILjava/lang/Class;)J
- */
-JNIEXPORT jlong JNICALL Java_org_jboss_jaio_libaioimpl_LibAIOController_init__Ljava_lang_String_2ILjava_lang_Class_2
- (JNIEnv *, jclass, jstring, jint, jclass);
-
-/*
- * Class: org_jboss_jaio_libaioimpl_LibAIOController
* Method: append
* Signature: (JLorg/jboss/jaio/api/AIOPackage;)V
*/
More information about the jboss-cvs-commits
mailing list