interface band
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 5177
GnuPG::Interface 0.33
GnuPG::Interface is a Perl interface to GnuPG. more>>
GnuPG::Interface is a Perl interface to GnuPG.
SYNOPSIS
# A simple example
use IO::Handle;
use GnuPG::Interface;
# settting up the situation
my $gnupg = GnuPG::Interface->new();
$gnupg->options->hash_init( armor => 1,
homedir => /home/foobar );
# Note you can set the recipients even if you arent encrypting!
$gnupg->options->push_recipients( ftobin@cpan.org );
$gnupg->options->meta_interactive( 0 );
# how we create some handles to interact with GnuPG
my $input = IO::Handle->new();
my $output = IO::Handle->new();
my $handles = GnuPG::Handles->new( stdin => $input,
stdout => $output );
# Now well go about encrypting with the options already set
my @plaintext = ( foobar );
my $pid = $gnupg->encrypt( handles => $handles );
# Now we write to the input of GnuPG
print $input @plaintext;
close $input;
# now we read the output
my @ciphertext = ;
close $output;
waitpid $pid, 0;
GnuPG::Interface and its associated modules are designed to provide an object-oriented method for interacting with GnuPG, being able to perform functions such as but not limited to encrypting, signing, decryption, verification, and key-listing parsing.
How Data Member Accessor Methods are Created
Each module in the GnuPG::Interface bundle relies on Class::MethodMaker to generate the get/set methods used to set the objects data members. This is very important to realize. This means that any data member which is a list has special methods assigned to it for pushing, popping, and clearing the list.
Understanding Bidirectional Communication
It is also imperative to realize that this package uses interprocess communication methods similar to those used in IPC::Open3 and "Bidirectional Communication with Another Process" in perlipc, and that users of this package need to understand how to use this method because this package does not abstract these methods for the user greatly. This package is not designed to abstract this away entirely (partly for security purposes), but rather to simply help create proper, clean calls to GnuPG, and to implement key-listing parsing. Please see "Bidirectional Communication with Another Process" in perlipc to learn how to deal with these methods.
Using this package to do message processing generally invovlves creating a GnuPG::Interface object, creating a GnuPG::Handles object, setting some options in its options data member, and then calling a method which invokes GnuPG, such as clearsign. One then interacts with with the handles appropriately, as described in "Bidirectional Communication with Another Process" in perlipc.
<<lessSYNOPSIS
# A simple example
use IO::Handle;
use GnuPG::Interface;
# settting up the situation
my $gnupg = GnuPG::Interface->new();
$gnupg->options->hash_init( armor => 1,
homedir => /home/foobar );
# Note you can set the recipients even if you arent encrypting!
$gnupg->options->push_recipients( ftobin@cpan.org );
$gnupg->options->meta_interactive( 0 );
# how we create some handles to interact with GnuPG
my $input = IO::Handle->new();
my $output = IO::Handle->new();
my $handles = GnuPG::Handles->new( stdin => $input,
stdout => $output );
# Now well go about encrypting with the options already set
my @plaintext = ( foobar );
my $pid = $gnupg->encrypt( handles => $handles );
# Now we write to the input of GnuPG
print $input @plaintext;
close $input;
# now we read the output
my @ciphertext = ;
close $output;
waitpid $pid, 0;
GnuPG::Interface and its associated modules are designed to provide an object-oriented method for interacting with GnuPG, being able to perform functions such as but not limited to encrypting, signing, decryption, verification, and key-listing parsing.
How Data Member Accessor Methods are Created
Each module in the GnuPG::Interface bundle relies on Class::MethodMaker to generate the get/set methods used to set the objects data members. This is very important to realize. This means that any data member which is a list has special methods assigned to it for pushing, popping, and clearing the list.
Understanding Bidirectional Communication
It is also imperative to realize that this package uses interprocess communication methods similar to those used in IPC::Open3 and "Bidirectional Communication with Another Process" in perlipc, and that users of this package need to understand how to use this method because this package does not abstract these methods for the user greatly. This package is not designed to abstract this away entirely (partly for security purposes), but rather to simply help create proper, clean calls to GnuPG, and to implement key-listing parsing. Please see "Bidirectional Communication with Another Process" in perlipc to learn how to deal with these methods.
Using this package to do message processing generally invovlves creating a GnuPG::Interface object, creating a GnuPG::Handles object, setting some options in its options data member, and then calling a method which invokes GnuPG, such as clearsign. One then interacts with with the handles appropriately, as described in "Bidirectional Communication with Another Process" in perlipc.
Download (0.037MB)
Added: 2006-08-04 License: Perl Artistic License Price:
1176 downloads
X Interface Monitor 1.8.4
X Interface Monitor monitors any network interface for traffic, load average, and various other statistics. more>>
X Interface Monitor (abbriviated xifmon) monitors any network interface (most suitable, the ppp# interface) for traffic, load average, and various other statistics using purly ioctl() directly to the Linux kernel.
It also has options to run `connect and `disconnect scripts, for dialup modem users who want easy connecting and disconnecting.
<<lessIt also has options to run `connect and `disconnect scripts, for dialup modem users who want easy connecting and disconnecting.
Download (0.49MB)
Added: 2005-10-13 License: GPL (GNU General Public License) Price:
1477 downloads
Class::Interfaces 0.04
Class::Interfaces is a Per module for defining interface classes inline. more>>
Class::Interfaces is a Per module for defining interface classes inline.
SYNOPSIS
# define some simple interfaces
use Class::Interfaces (
Serializable => [ pack, unpack ],
Printable => [ toString ],
Iterable => [ iterator ],
Iterator => [ hasNext, next ]
);
# or some more complex ones ...
# interface can also inherit from
# other interfaces using this form
use Class::Interfaces (
BiDirectionalIterator => {
isa => Iterator,
methods => [ hasPrev, prev ]
},
ResetableIterator => {
isa => Iterator,
methods => [ reset ]
},
# we even support multiple inheritance
ResetableBiDirectionalIterator => {
isa => [ ResetableIterator, BiDirectionalIterator ]
}
);
# it is also possible to create an
# empty interface, sometimes called
# a marker interface
use Class::Interfaces (
JustAMarker => undef
);
This module provides a simple means to define abstract class interfaces, which can be used to program using the concepts of interface polymorphism.
<<lessSYNOPSIS
# define some simple interfaces
use Class::Interfaces (
Serializable => [ pack, unpack ],
Printable => [ toString ],
Iterable => [ iterator ],
Iterator => [ hasNext, next ]
);
# or some more complex ones ...
# interface can also inherit from
# other interfaces using this form
use Class::Interfaces (
BiDirectionalIterator => {
isa => Iterator,
methods => [ hasPrev, prev ]
},
ResetableIterator => {
isa => Iterator,
methods => [ reset ]
},
# we even support multiple inheritance
ResetableBiDirectionalIterator => {
isa => [ ResetableIterator, BiDirectionalIterator ]
}
);
# it is also possible to create an
# empty interface, sometimes called
# a marker interface
use Class::Interfaces (
JustAMarker => undef
);
This module provides a simple means to define abstract class interfaces, which can be used to program using the concepts of interface polymorphism.
Download (0.006MB)
Added: 2006-10-05 License: Perl Artistic License Price:
1115 downloads
Imager::interface.pod 0.54
Imager::interface.pod decribes the C level virtual image interface. more>>
Imager::interface.pod decribes the C level virtual image interface.
The Imager virtual interface aims to allow image types to be created for special purposes, both to allow consistent access to images with different sample sizes, and organizations, but also to allow creation of synthesized or virtual images.
This is a C level interface rather than Perl.
<<lessThe Imager virtual interface aims to allow image types to be created for special purposes, both to allow consistent access to images with different sample sizes, and organizations, but also to allow creation of synthesized or virtual images.
This is a C level interface rather than Perl.
Download (0.83MB)
Added: 2006-10-27 License: Perl Artistic License Price:
1092 downloads
VIDeo Interface for *niX 1.0.0
VIDeo Interface for *niX (VIDIX) is a portable interface to userspace drivers to provide DGA everywhere possible. more>>
VIDeo Interface for *niX (VIDIX) is a portable interface to userspace drivers to provide DGA everywhere possible. VIDIX is portable interface which was designed and introduced as interface to userspace drivers to provide DGA everywhere where its possible.
Enhancements:
- warnings suppressing
- fixes and improvements
- Win32 related improvements
- h/w revision detection for cle266 chipset
- support for Geforce FX5500
- added vt8378 chipset as unichrome driver
<<lessEnhancements:
- warnings suppressing
- fixes and improvements
- Win32 related improvements
- h/w revision detection for cle266 chipset
- support for Geforce FX5500
- added vt8378 chipset as unichrome driver
Download (0.31MB)
Added: 2007-04-07 License: LGPL (GNU Lesser General Public License) Price:
934 downloads
Web Interface for SIP Trace 0.4
Web Interface for SIP Trace is a PHP Web Interface that permits you to connect on a remote host/port and listen/filter. more>>
Web Interface for SIP Trace is a PHP Web Interface that permits you to connect on a remote host/port and listen/filter.
Web Interface for SIP Trace was born as a prof concept of the idea to capture SIP traffic from a remote host (SIP Proxy, Gateway, etc) and show up alive SIP messages about an specific dialog (filtered by From SIP user) to help our tech support team to debug SIP transactions in a friendly way.
There are 3 peaces of software in this process, 2 of them was created by us:
1. ngrep: Created by Jordan Ritter - http://ngrep.sourceforge.net
ngrep strives to provide most of GNU greps common features, applying them to the network layer. ngrep is a pcap-aware tool that will allow you to specify extended regular or hexadecimal expressions to match against data payloads of packets. It currently recognizes TCP, UDP and ICMP across Ethernet, PPP, SLIP, FDDI, Token Ring and null interfaces, and understands bpf filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop.
2. siptraced: Created by Devel-IT - http://www.devel.it
siptraced is a perl daemon who reads a ngrep log file and push each line on a TCP port, so every one connected on this port will listen all traffic captured by ngrep (dangerous and perhaps a waste of bandwidth). There is no user/IP authentication yet.
3. WIST: Created by Devel-IT - http://www.devel.it
WIST is a PHP Web Interface who permits you to connect on a remote host/port and listen/filter a SIP dialog of an specific SIP From number, avoiding to listen all captured traffic pushed by siptraced. The STOP control is done by browsers stop button. The output is colorized and "Call-ID" tag is highlighted to make it simple to be located. You can run WIST on any host running a Web Server with PHP >= 4.0.x and authorized to connect on siptraced remote TCP port.
There is no guarantee about our softwares, use it by your own risk. Read the source code first, if you didnt understand it dont use it!
Enhancements:
- Minor bugfixes.
- Shows error messages formatted in red.
<<lessWeb Interface for SIP Trace was born as a prof concept of the idea to capture SIP traffic from a remote host (SIP Proxy, Gateway, etc) and show up alive SIP messages about an specific dialog (filtered by From SIP user) to help our tech support team to debug SIP transactions in a friendly way.
There are 3 peaces of software in this process, 2 of them was created by us:
1. ngrep: Created by Jordan Ritter - http://ngrep.sourceforge.net
ngrep strives to provide most of GNU greps common features, applying them to the network layer. ngrep is a pcap-aware tool that will allow you to specify extended regular or hexadecimal expressions to match against data payloads of packets. It currently recognizes TCP, UDP and ICMP across Ethernet, PPP, SLIP, FDDI, Token Ring and null interfaces, and understands bpf filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop.
2. siptraced: Created by Devel-IT - http://www.devel.it
siptraced is a perl daemon who reads a ngrep log file and push each line on a TCP port, so every one connected on this port will listen all traffic captured by ngrep (dangerous and perhaps a waste of bandwidth). There is no user/IP authentication yet.
3. WIST: Created by Devel-IT - http://www.devel.it
WIST is a PHP Web Interface who permits you to connect on a remote host/port and listen/filter a SIP dialog of an specific SIP From number, avoiding to listen all captured traffic pushed by siptraced. The STOP control is done by browsers stop button. The output is colorized and "Call-ID" tag is highlighted to make it simple to be located. You can run WIST on any host running a Web Server with PHP >= 4.0.x and authorized to connect on siptraced remote TCP port.
There is no guarantee about our softwares, use it by your own risk. Read the source code first, if you didnt understand it dont use it!
Enhancements:
- Minor bugfixes.
- Shows error messages formatted in red.
Download (0.023MB)
Added: 2006-03-30 License: GPL (GNU General Public License) Price:
1312 downloads
IOC::Proxy::Interfaces 0.29
IOC::Proxy::Interfaces is a IOC::Proxy subclasss to proxy objects with a given interface. more>>
IOC::Proxy::Interfaces is a IOC::Proxy subclasss to proxy objects with a given interface.
SYNOPSIS
use IOC::Proxy::Interfaces;
my $proxy_server = IOC::Proxy->new({
interface => AnInterface,
# ... add other config values here
});
$proxy_server->wrap($object);
# our $object is now proxied, but only the
# methods which are part of the interface
# will work, all others will throw exceptions
$object->method_in_interface(); # works as normal
$object->method_not_in_interface(); # will thrown an exception
This is a subclass of IOC::Proxy which allows for the partial proxing of an object. It will only proxy the methods of a given interface, all other methods will throw a IOC::MethodNotFound exception. This could be used to (in a very weird way) emulate the concept of upcasting in Java, it is also somewhat like the idea of using interfaces with Dynamic Proxies in Java as well (see the article link in "SEE ALSO").
This proxy can be useful if you need to have an object strictly conform to a particular interface in a particular situation. The interface class is also pushed onto the proxies @ISA so that it will respond to UNIVERSAL::isa($object, Interface) correctly. Keep in mind that there is no need for the object being proxied to have the interface in its @ISA prior to being proxied. The proxy is dynamic and only requires that the object conform to the interface when it is being wraped but the proxy object.
<<lessSYNOPSIS
use IOC::Proxy::Interfaces;
my $proxy_server = IOC::Proxy->new({
interface => AnInterface,
# ... add other config values here
});
$proxy_server->wrap($object);
# our $object is now proxied, but only the
# methods which are part of the interface
# will work, all others will throw exceptions
$object->method_in_interface(); # works as normal
$object->method_not_in_interface(); # will thrown an exception
This is a subclass of IOC::Proxy which allows for the partial proxing of an object. It will only proxy the methods of a given interface, all other methods will throw a IOC::MethodNotFound exception. This could be used to (in a very weird way) emulate the concept of upcasting in Java, it is also somewhat like the idea of using interfaces with Dynamic Proxies in Java as well (see the article link in "SEE ALSO").
This proxy can be useful if you need to have an object strictly conform to a particular interface in a particular situation. The interface class is also pushed onto the proxies @ISA so that it will respond to UNIVERSAL::isa($object, Interface) correctly. Keep in mind that there is no need for the object being proxied to have the interface in its @ISA prior to being proxied. The proxy is dynamic and only requires that the object conform to the interface when it is being wraped but the proxy object.
Download (0.048MB)
Added: 2007-06-07 License: Perl Artistic License Price:
869 downloads
Perlbug::Interface::Web 2.93
Perlbug::Interface::Web is a web interface to perlbug database. more>>
Perlbug::Interface::Web is a web interface to perlbug database.
SYNOPSIS
my $o_web = Perlbug::Interface::Web->new;
print $o_web->top;
print $o_web->request(help);
print $o_web->links;
METHODS
new
Create new Perlbug::Interface::Web object.
my $web = Perlbug::Interface::Web->new;
setup
Setup Perlbug::Interface::Web
$o_web->setup($cgi);
check_user
Access authentication via http, we just prime ourselves with data from the db as well.
menus
Return menu of system, designed for vertical format. Wraps logo, title and links
print $o_web->menus();
logo
Return logo of system with href=hard_wired_url
print $o_web->logo();
get_title
Return title of current page
print $o_web->get_title();
summary
Return summary of open/closed bugs
print $o_web->summary();
links
Return links of system, with adminfaq inserted if appropriate, configured links and object search forms.
print $o_web->links();
index
Display the index results here...
get_request
Return the req value for this request
my $req = $self->get_request;
set_command
Set the command type for the rest of the process, based on the input and operation
my $cmd = $o_web->set_command($req);
commands
Return command menu buttons for request given
print $o_web->commands($req);
switch
Return appropriate method call for request(else index), using internal CGI object
my $method = $o_web->switch([$req]); # set $method=($call|index)
start
Return appropriate start header data for web request, includes start table.
print $o_web->start();
form
Return form with appropriate name and target etc.
print $o_web->form(menus);
top
Return consistent top of page.
print $o_web->top($req, $cmd);
request
Handle all web requests (internal print)
$o_web->request($call);
target2file
Return appropriate dir/file.ext for given target string
my $filename = $o_base->target2file(header);
# -> /home/richard/web/header.html
finish
Return appropriate finishing html
Varies with framed, includes table finish
print $o_web->finish($req);
overview
Wrapper for doo method
graph
Display pie or mixed graph for groups of bugs etc., mixed to come.
date
Wrapper for search by date access
create
Wrapper for object creation
$o_web->create($obj, %data);
object_handler
Wrapper for object access: no ids = search form
$o_web->object_handler($me_thod, $oid); # o_cgi comes from the heavens
hist
History mechanism for bugs and users.
Move formatting to Formatter::history !!!
headers
Headers for all objects (message, note, ...) by id
$o_web->headers(patch, $id);
bidmid
Wrapper for bugid and messageid access
spec
Returns specifications for the Perlbug system.
$dynamic =~ s/ />/g;
$dynamic =~ s/b(http:.+?perlbug.cgi)b/$1/gi;
$dynamic =~ s/b([ |&.t;]+@.+?.(?:com|org|net|edu))b/$1/gi;
webhelp
Web based help for perlbug.
print $web->webhelp;
mailhelp
Web based mail help for perlbug.
print $web->mailhelp;
delete
Wrapper for delete access
sql
Open field sql query processor
todo
To do list, may be appended to
adminfaq
adminFAQ
web_query
Form bugid search web query results
# results - dont map to query() unless Base::query modified
search
Construct search form
with chosen params as defaults...
update
For all application objects, wraps to object_handler
$o_web->update(); # args ignored here for passing purposes
current_buttons
Get and set array of relevant buttons by context key
my @buttons = $o_web->current_buttons(search update reset, scalar(@uids), [$colspan]);
case
Handle case sensitivity from web search form.
format_query
Produce SQL query for bug search from cgi query.
Can be optimised somewhat ...
my $query = $web->format_query;
wildcard
Convert * into % for sqlquery
my $string = $self->wildcard(5.*);
tenify
Create range of links to split (by tens or more) bugids from web query result.
$self->tenify(@_bids, bug, 7); # in chunks of 7
<<lessSYNOPSIS
my $o_web = Perlbug::Interface::Web->new;
print $o_web->top;
print $o_web->request(help);
print $o_web->links;
METHODS
new
Create new Perlbug::Interface::Web object.
my $web = Perlbug::Interface::Web->new;
setup
Setup Perlbug::Interface::Web
$o_web->setup($cgi);
check_user
Access authentication via http, we just prime ourselves with data from the db as well.
menus
Return menu of system, designed for vertical format. Wraps logo, title and links
print $o_web->menus();
logo
Return logo of system with href=hard_wired_url
print $o_web->logo();
get_title
Return title of current page
print $o_web->get_title();
summary
Return summary of open/closed bugs
print $o_web->summary();
links
Return links of system, with adminfaq inserted if appropriate, configured links and object search forms.
print $o_web->links();
index
Display the index results here...
get_request
Return the req value for this request
my $req = $self->get_request;
set_command
Set the command type for the rest of the process, based on the input and operation
my $cmd = $o_web->set_command($req);
commands
Return command menu buttons for request given
print $o_web->commands($req);
switch
Return appropriate method call for request(else index), using internal CGI object
my $method = $o_web->switch([$req]); # set $method=($call|index)
start
Return appropriate start header data for web request, includes start table.
print $o_web->start();
form
Return form with appropriate name and target etc.
print $o_web->form(menus);
top
Return consistent top of page.
print $o_web->top($req, $cmd);
request
Handle all web requests (internal print)
$o_web->request($call);
target2file
Return appropriate dir/file.ext for given target string
my $filename = $o_base->target2file(header);
# -> /home/richard/web/header.html
finish
Return appropriate finishing html
Varies with framed, includes table finish
print $o_web->finish($req);
overview
Wrapper for doo method
graph
Display pie or mixed graph for groups of bugs etc., mixed to come.
date
Wrapper for search by date access
create
Wrapper for object creation
$o_web->create($obj, %data);
object_handler
Wrapper for object access: no ids = search form
$o_web->object_handler($me_thod, $oid); # o_cgi comes from the heavens
hist
History mechanism for bugs and users.
Move formatting to Formatter::history !!!
headers
Headers for all objects (message, note, ...) by id
$o_web->headers(patch, $id);
bidmid
Wrapper for bugid and messageid access
spec
Returns specifications for the Perlbug system.
$dynamic =~ s/ />/g;
$dynamic =~ s/b(http:.+?perlbug.cgi)b/$1/gi;
$dynamic =~ s/b([ |&.t;]+@.+?.(?:com|org|net|edu))b/$1/gi;
webhelp
Web based help for perlbug.
print $web->webhelp;
mailhelp
Web based mail help for perlbug.
print $web->mailhelp;
delete
Wrapper for delete access
sql
Open field sql query processor
todo
To do list, may be appended to
adminfaq
adminFAQ
web_query
Form bugid search web query results
# results - dont map to query() unless Base::query modified
search
Construct search form
with chosen params as defaults...
update
For all application objects, wraps to object_handler
$o_web->update(); # args ignored here for passing purposes
current_buttons
Get and set array of relevant buttons by context key
my @buttons = $o_web->current_buttons(search update reset, scalar(@uids), [$colspan]);
case
Handle case sensitivity from web search form.
format_query
Produce SQL query for bug search from cgi query.
Can be optimised somewhat ...
my $query = $web->format_query;
wildcard
Convert * into % for sqlquery
my $string = $self->wildcard(5.*);
tenify
Create range of links to split (by tens or more) bugids from web query result.
$self->tenify(@_bids, bug, 7); # in chunks of 7
Download (0.49MB)
Added: 2007-07-31 License: Perl Artistic License Price:
816 downloads
GNOME Interface for YUM 0.1.5
GNOME Interface for YUM is a graphical frame-program for easier use and setup the YUM install program. more>>
GNOME Interface for YUM is a graphical frame-program for easier use and setup the YUM install program.
Displays the accessible packages on the package service sites with filter. Manage the settings of package services.
Manage the cache used by YUM: free up disk space, manual install and transfer of downloaded packages. Displays detailed package information about the installed packages or package files. Displays the files in the packages with a program chosen by user.
<<lessDisplays the accessible packages on the package service sites with filter. Manage the settings of package services.
Manage the cache used by YUM: free up disk space, manual install and transfer of downloaded packages. Displays detailed package information about the installed packages or package files. Displays the files in the packages with a program chosen by user.
Download (0.57MB)
Added: 2006-11-17 License: GPL (GNU General Public License) Price:
1076 downloads
PHP Database Interface 1.0 RC4
PHP Database Interface is an easy to use PHP database interface. more>>
PHP Database Interface is an easy to use PHP database interface meant to give applications universal support across many databases, including several flat file formats.
Installation
These are just a few notes installation notes regarding DBi and using it with your project
txtSQL support requires the following files from the release archive (currently 3.0 Beta is Supported) :
txtSQL.class.php, txtSQL.parser.php & txtSQL.core.php To be placed in the 3rdparty/txtsql/ directory or the location of your choice
fileSQL support requires the the following file from the release archive (currently 1.0 RC4 is Supported) :
fileSQL.php To be placed in the 3rdparty/fql/ directory of the location of your choice
Test data and a demo script is available in the demo/ directory
Simple Example
// The filesystem root path to DBi needs to be defined before the include
define(PHP_DBI_ROOT, C:/program files/apache group/apache2/htdocs2/modules/dbi/);
define(PHP_DBI_FQL, PHP_DBI_ROOT.3rdparty/fql/fileSQL.php); //Required for FQL Support
define(PHP_DBI_TXTSQL, PHP_DBI_ROOT.3rdparty/txtsql/); //Required for txtSQL Support
include_once("../dbi.php");
$interface = dbi::factoryControllerConstruction(); //create a new dbi object
// open a connection to the database (this will example will work with any
// of the interfaced databases
$interface->open_connection_now_persistent("fql&".PHP_DBI_ROOT."3rdparty/fql/data&demo");
//Select the entire contents of test2 table and store the first row
$inteface->ExecuteQueryAndReturnRow?(array(select => *, from => test2));
$results = $interface->fetchRowThenGetAnotherrow();
//Display the first row of results
print "First Row: ";
print_r($results);
print "< br >";
$interface->disconnect_fromDatabase(); // Closes connection to the database
Enhancements:
- The tableInfo function was added to return the schema.
- LIMIT was added to select functions for supporting databases.
- LIMIT emulation is available to all database types.
- Support for the Firebird database was added.
<<lessInstallation
These are just a few notes installation notes regarding DBi and using it with your project
txtSQL support requires the following files from the release archive (currently 3.0 Beta is Supported) :
txtSQL.class.php, txtSQL.parser.php & txtSQL.core.php To be placed in the 3rdparty/txtsql/ directory or the location of your choice
fileSQL support requires the the following file from the release archive (currently 1.0 RC4 is Supported) :
fileSQL.php To be placed in the 3rdparty/fql/ directory of the location of your choice
Test data and a demo script is available in the demo/ directory
Simple Example
// The filesystem root path to DBi needs to be defined before the include
define(PHP_DBI_ROOT, C:/program files/apache group/apache2/htdocs2/modules/dbi/);
define(PHP_DBI_FQL, PHP_DBI_ROOT.3rdparty/fql/fileSQL.php); //Required for FQL Support
define(PHP_DBI_TXTSQL, PHP_DBI_ROOT.3rdparty/txtsql/); //Required for txtSQL Support
include_once("../dbi.php");
$interface = dbi::factoryControllerConstruction(); //create a new dbi object
// open a connection to the database (this will example will work with any
// of the interfaced databases
$interface->open_connection_now_persistent("fql&".PHP_DBI_ROOT."3rdparty/fql/data&demo");
//Select the entire contents of test2 table and store the first row
$inteface->ExecuteQueryAndReturnRow?(array(select => *, from => test2));
$results = $interface->fetchRowThenGetAnotherrow();
//Display the first row of results
print "First Row: ";
print_r($results);
print "< br >";
$interface->disconnect_fromDatabase(); // Closes connection to the database
Enhancements:
- The tableInfo function was added to return the schema.
- LIMIT was added to select functions for supporting databases.
- LIMIT emulation is available to all database types.
- Support for the Firebird database was added.
Download (0.033MB)
Added: 2005-10-26 License: BSD License Price:
1464 downloads
Thrap 2b
Thrap project is a usenet news client. more>>
Thrap project is a usenet news client.
The client provides a simple vi-like user interface and access to usenet using the NNTP protocol.
Enhancements:
- This release fixes a CPU hog bug.
<<lessThe client provides a simple vi-like user interface and access to usenet using the NNTP protocol.
Enhancements:
- This release fixes a CPU hog bug.
Download (0.015MB)
Added: 2007-03-10 License: Public Domain Price:
958 downloads
General Applet Interface Library 0.5.10
The goal of the General Applet Interface Library is to give programmers a simple yet powerful applet interface. more>>
The goal of the General Applet Interface Library is to give programmers a simple yet powerful applet interface. This library supports wmapplet/dockapps, GNOME 2 panel applets, and ROX panel applets.
This library supports at the moment Dockapps, Gnome 2 Panel Applets and Rox panel applets. In the future support for XFCE 4 and KDE is planned to be added. The applet program doesnt have to care about if the applet will be used on the Gnome panel or in the dock. The library handles that.
Over 50% of the code in a Dockapp and a Gnome 2 Panel applet does actully only one thing, setting up the applet window. With GAI, you can reduce it to just a few lines of code.
Enhancements:
- Updated the example applets.
- The preference dialog is now nicely resized.
- Fixed some minor memory leaks in the preference dialog.
- API change: The function connected to gai_signal_on_preferences() shall now take: (gboolean changed, gpointer data) as argument. changed is true if the user changed
- anything in the preference window. False if the user did nothing.
- Added two new preference window items. GAI_LISTSTORE and GAI_EDITLISTSTORE. The first shows just a list, no altering is possible. The second provide a list that can be increased and reduced by the user. (NOT YET FINISHED!)
- Cleaned up parts of the preference generator. Several minor memory leaks fixed.
- Update gai.spec. Some Fedora Core changes by Michael Schwendt mschwendt@users.sf.net, and Michel Alexandre Salim salimma@users.sf.net
- Allowing applet to be bigger than 1000 pixels (2560 is now max).
- Ashley V wants to have Shermans
- aquarium real big Destroying (clicking on the window manager "X" icon) the preference window now works fine.
- Destroying About box is now handled correctly.
- Rewrote large part of the right mouse click menu handleling code. Now you can remove, change, insert and add menu items during run time. gai_menu_insert(...), gai_menu_change(...) and gai_menu_remove(...) is new. gai_menu_add now returns an integer that is the ID of the menu item.
- Fixed broken libdir link in gai.pc
- Make sure GdkColor is never null when given to applet.
- Documentation updates.
- Various minor fixes found on the fedora extras by Michael Schwendt and Thorsten Leemhuis fedora@leemhuis.info. Please mail me fixes directly!!
- GtkFileChooser dialog is now used instead of GtkFileSelector when GTK+ 2.4 or later is detected.
- If gtk+ 2.4 or later, use varously updated widgets instead of older ones.
- Merged big nls patch by Olaf Leidinger Thanks!
- NLS is finally supported for GAI. Not yet there for applets
- The BonoboUIVerb array canary was missing and that caused the GNOME to crash. Patch by Jean-Yves Lefort
<<lessThis library supports at the moment Dockapps, Gnome 2 Panel Applets and Rox panel applets. In the future support for XFCE 4 and KDE is planned to be added. The applet program doesnt have to care about if the applet will be used on the Gnome panel or in the dock. The library handles that.
Over 50% of the code in a Dockapp and a Gnome 2 Panel applet does actully only one thing, setting up the applet window. With GAI, you can reduce it to just a few lines of code.
Enhancements:
- Updated the example applets.
- The preference dialog is now nicely resized.
- Fixed some minor memory leaks in the preference dialog.
- API change: The function connected to gai_signal_on_preferences() shall now take: (gboolean changed, gpointer data) as argument. changed is true if the user changed
- anything in the preference window. False if the user did nothing.
- Added two new preference window items. GAI_LISTSTORE and GAI_EDITLISTSTORE. The first shows just a list, no altering is possible. The second provide a list that can be increased and reduced by the user. (NOT YET FINISHED!)
- Cleaned up parts of the preference generator. Several minor memory leaks fixed.
- Update gai.spec. Some Fedora Core changes by Michael Schwendt mschwendt@users.sf.net, and Michel Alexandre Salim salimma@users.sf.net
- Allowing applet to be bigger than 1000 pixels (2560 is now max).
- Ashley V wants to have Shermans
- aquarium real big Destroying (clicking on the window manager "X" icon) the preference window now works fine.
- Destroying About box is now handled correctly.
- Rewrote large part of the right mouse click menu handleling code. Now you can remove, change, insert and add menu items during run time. gai_menu_insert(...), gai_menu_change(...) and gai_menu_remove(...) is new. gai_menu_add now returns an integer that is the ID of the menu item.
- Fixed broken libdir link in gai.pc
- Make sure GdkColor is never null when given to applet.
- Documentation updates.
- Various minor fixes found on the fedora extras by Michael Schwendt and Thorsten Leemhuis fedora@leemhuis.info. Please mail me fixes directly!!
- GtkFileChooser dialog is now used instead of GtkFileSelector when GTK+ 2.4 or later is detected.
- If gtk+ 2.4 or later, use varously updated widgets instead of older ones.
- Merged big nls patch by Olaf Leidinger Thanks!
- NLS is finally supported for GAI. Not yet there for applets
- The BonoboUIVerb array canary was missing and that caused the GNOME to crash. Patch by Jean-Yves Lefort
Download (0.28MB)
Added: 2006-07-18 License: LGPL (GNU Lesser General Public License) Price:
1195 downloads
Python/Tk Empire Interface 1.18.1
Python/Tk Empire Interface project is a cross-platform Empire GUI client. more>>
Python/Tk Empire Interface project is a cross-platform Empire GUI client.
The Python/Tk Empire Interface (PTkEI) enables you to connect to empire 4.x.x (Wolfpack) servers.
Empire is a real-time war game with long tradition.
You can find out about Empire and currently running servers and other clients at its homepage.
This client is an example for a truly portable cross-platform GUI, known to run on Unix, X11, Win32 and Mac.
Additionally you do not give up any command line power as a player, but you have to to learn the empire commands to make use of this GUI client.
Main features:
- Portability
- Map Features
- Command Line
- Socket Interface
- Smart Features
<<lessThe Python/Tk Empire Interface (PTkEI) enables you to connect to empire 4.x.x (Wolfpack) servers.
Empire is a real-time war game with long tradition.
You can find out about Empire and currently running servers and other clients at its homepage.
This client is an example for a truly portable cross-platform GUI, known to run on Unix, X11, Win32 and Mac.
Additionally you do not give up any command line power as a player, but you have to to learn the empire commands to make use of this GUI client.
Main features:
- Portability
- Map Features
- Command Line
- Socket Interface
- Smart Features
Download (0.23MB)
Added: 2006-11-14 License: GPL (GNU General Public License) Price:
1076 downloads
Java GForge SOAP Interface 0.0.10
Java GForge SOAP Interface is an approach to access the GForge collaboration platform via Java. more>>
Java GForge SOAP Interface (or JaGoSI for short) is an approach to access the GForge collaboration platform via Java. This can be used to put other applications on top of JaGoSI. It may be integrated with other applications like the former MyLar project.
Enhancements:
- A complete working file distribution is available for the GForge platform via an Ant task.
- Many bugs were fixed.
- The Maven build was fixed, so compiling with sub components is working.
- The project structure was changed.
- JUnit was updated to version 4.
<<lessEnhancements:
- A complete working file distribution is available for the GForge platform via an Ant task.
- Many bugs were fixed.
- The Maven build was fixed, so compiling with sub components is working.
- The project structure was changed.
- JUnit was updated to version 4.
Download (MB)
Added: 2007-08-13 License: Perl Artistic License Price:
804 downloads
Multi-Simulation Interface 0.14.0
Multi-Simulator Interface, in shrot MSI, is a simulation interconnection engine. more>>
Multi-Simulator Interface, in shrot MSI, is a simulation interconnection engine. In other words it is a program that connects simulations together by synchronizing their clocks and data. Multi-Simulation Interface serves the same purpose as HLA and supports most of HLAs functionality (and more).
The MSI is an HLA alternative. The major motivating factors in the design of the MSI are speed, interoperability, and ease of use.
The MSI was written as a cutting edge distributed simulation component to connect multiple instances of ATLs premiere simulation software, CSIM, and it can be used to interface any compatible simulations.
How does the MSI compare to HLA?
The MSI was originally created to be just a light weight HLA RTI. However, as it was written, limitations in HLA were discovered. The MSI is an improvement on both the design and implementation of HLA. Some highlights include:
A 1,536 to 1 reduction in size over the publicly available (until late 2002) HLA RTI.
At least one order of magnitude of bandwidth consumption less than the publicly available (until late 2002) HLA RTI.
The ability to subscribe to an object name in addition to a type.
Time synchronization that allows for proper causality when used with discrete event simulators.
Support for systems-of-systems (SoS) and hierarchically organized simulations.
Availability for many platforms.
MSI Concept - A Synchronized Data Broker
The concept behind MSI is the synchronized data broker. There are many connected software systems that posses state data that changes over the life of that system. In the case where these systems need to exchange this changing data with other systems and the other systems will exhibit the effects of this data on their own state, the synchronization of this data may need to be managed.
Historically the management of this data has been as simple as tagging it with the time of its release. If there is any conflict in the data the most recent version of the data is used. If the data is late an extrapolation can potentially be used. In SQL relational databases transactions and locking are used to ensure data integrity. Most data brokering services offer little or no sychronization, only delivery.
MSI Setup and Use
The MSI uses a XML stream through a direct socket connection for communications. This enables the MSI to be used from any programming language that can use sockets (C, C++, Java, Ada, Lisp, Perl, etc.). Also, the MSI was written with cross-platform libraries that make it portable to all the major OS platforms (Linux, Solaris, Mac OS X, Microsoft Windows, IRIX, HPUX, etc.).
The MSI is a single executable file and is distributed with example code for the simulator/federate side interface.
MSI Time Synchronization
The MSI time synchronizer can mix unconstrained with time constrained simulations. Each constrained simulation reports the time of the next event that will occur in that simulation/federate. This time may be artificially inflated to cause loose synchronization (less overhead but less guarantee of accuracy). The simulations/federates will advance to the announced time.
MSI Data Synchronization
The MSI implements a publish/subscribe data broker. The MSI is presently not validating, therefore it does not require a separate data format specification (like the HLA FOM). When data format validation is implemented, it will be an optional feature and not written in Lisp. This greatly reduces MSIs setup time. Also, not being locked to a predetermined data format allows for dynamic data types.
There are five commands associated with the MSI data broker: publish, subscribe, update, unsubscribe, destroy (destroy is not implemented yet). Simulations/federates may subscribe to object names in addition to object types. This allows simulations to subscribe to specific objects of a type without needing to receive updates of all objects of that type. The update command is both an incoming and outgoing command. When a simulation/federate receives an update command, it is expected to reflect the new values of that object.
The MSI has a very flexible publish and subscribe system. A federate may subscribe to an object type or an object name. In addition a federate may specify particular attributes of an object or object type. For example, if an object has attributes name, x, y, and z, a federate that only considers two dimensions may choose to subscribe only to name, x, and y.
The MSI also supports systems of systems and object hierarchy in simulations. A publishing federate may designate a parent object. Subscribers may then subscribe to the objects children.
MSI Messaging
The MSI allows simulations/federates to send messages (interactions in HLA) to each other. These messages can contain multiple attributes and be multicast to a specific group of simulations.
Recently Added Features
Removed external library dependencies to improve the portability and fragility of the MSI.
Added a better client library.
Improved documentation.
Enhancements:
- An XML parsing bug in the utilities library was fixed.
- The socket library was enhanced with more protocols, Win32 tricks, and the ability to key off of addresses as well as names.
- The --wait-for command line argument was added.
- Several internal bugs were fixed.
- More of the client library and the CSIM interface were flushed out.
- All standard functionality was tested.
<<lessThe MSI is an HLA alternative. The major motivating factors in the design of the MSI are speed, interoperability, and ease of use.
The MSI was written as a cutting edge distributed simulation component to connect multiple instances of ATLs premiere simulation software, CSIM, and it can be used to interface any compatible simulations.
How does the MSI compare to HLA?
The MSI was originally created to be just a light weight HLA RTI. However, as it was written, limitations in HLA were discovered. The MSI is an improvement on both the design and implementation of HLA. Some highlights include:
A 1,536 to 1 reduction in size over the publicly available (until late 2002) HLA RTI.
At least one order of magnitude of bandwidth consumption less than the publicly available (until late 2002) HLA RTI.
The ability to subscribe to an object name in addition to a type.
Time synchronization that allows for proper causality when used with discrete event simulators.
Support for systems-of-systems (SoS) and hierarchically organized simulations.
Availability for many platforms.
MSI Concept - A Synchronized Data Broker
The concept behind MSI is the synchronized data broker. There are many connected software systems that posses state data that changes over the life of that system. In the case where these systems need to exchange this changing data with other systems and the other systems will exhibit the effects of this data on their own state, the synchronization of this data may need to be managed.
Historically the management of this data has been as simple as tagging it with the time of its release. If there is any conflict in the data the most recent version of the data is used. If the data is late an extrapolation can potentially be used. In SQL relational databases transactions and locking are used to ensure data integrity. Most data brokering services offer little or no sychronization, only delivery.
MSI Setup and Use
The MSI uses a XML stream through a direct socket connection for communications. This enables the MSI to be used from any programming language that can use sockets (C, C++, Java, Ada, Lisp, Perl, etc.). Also, the MSI was written with cross-platform libraries that make it portable to all the major OS platforms (Linux, Solaris, Mac OS X, Microsoft Windows, IRIX, HPUX, etc.).
The MSI is a single executable file and is distributed with example code for the simulator/federate side interface.
MSI Time Synchronization
The MSI time synchronizer can mix unconstrained with time constrained simulations. Each constrained simulation reports the time of the next event that will occur in that simulation/federate. This time may be artificially inflated to cause loose synchronization (less overhead but less guarantee of accuracy). The simulations/federates will advance to the announced time.
MSI Data Synchronization
The MSI implements a publish/subscribe data broker. The MSI is presently not validating, therefore it does not require a separate data format specification (like the HLA FOM). When data format validation is implemented, it will be an optional feature and not written in Lisp. This greatly reduces MSIs setup time. Also, not being locked to a predetermined data format allows for dynamic data types.
There are five commands associated with the MSI data broker: publish, subscribe, update, unsubscribe, destroy (destroy is not implemented yet). Simulations/federates may subscribe to object names in addition to object types. This allows simulations to subscribe to specific objects of a type without needing to receive updates of all objects of that type. The update command is both an incoming and outgoing command. When a simulation/federate receives an update command, it is expected to reflect the new values of that object.
The MSI has a very flexible publish and subscribe system. A federate may subscribe to an object type or an object name. In addition a federate may specify particular attributes of an object or object type. For example, if an object has attributes name, x, y, and z, a federate that only considers two dimensions may choose to subscribe only to name, x, and y.
The MSI also supports systems of systems and object hierarchy in simulations. A publishing federate may designate a parent object. Subscribers may then subscribe to the objects children.
MSI Messaging
The MSI allows simulations/federates to send messages (interactions in HLA) to each other. These messages can contain multiple attributes and be multicast to a specific group of simulations.
Recently Added Features
Removed external library dependencies to improve the portability and fragility of the MSI.
Added a better client library.
Improved documentation.
Enhancements:
- An XML parsing bug in the utilities library was fixed.
- The socket library was enhanced with more protocols, Win32 tricks, and the ability to key off of addresses as well as names.
- The --wait-for command line argument was added.
- Several internal bugs were fixed.
- More of the client library and the CSIM interface were flushed out.
- All standard functionality was tested.
Download (3.0MB)
Added: 2006-05-26 License: GPL (GNU General Public License) Price:
1254 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above interface band search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed