supportsoft web objects
Sponsored Links
Sponsored Links
supportsoft web objects
No.
Title
Category
Price
License
Expand All
Python Web Objects is a dynamic page generation system that allows the developer to embed Python code inside HTML. It is similar in function to what JSP is to Java. ts a module that runs under mod_python and the Apache webserver. It is designed to offer a good balance between a providing a clean way to integrate design content from code, while doing so as fast as possible.
Download the latest version, then read the documentation. If youre into antiques, you can always browse the archives, but theres no reason to use an old version.
To install PWO, first decompress the tarball you downloaded.
$ gunzip pwo-0.XX.tar.gz
$ tar xvf pwo-0.XX.tar
Then, copy the pwo.py module into some location in your PYTHONPATH. The proper location is usually /usr/local/lib/python2.x/site-packages/
$ cp pwo-0.XX/pwo.py /usr/local/lib/python2.2/site-packages/
PWO should now be ready to use.
To configure a directory to make PWO pages, you first need to make sure that the directory is visible on the web. Ask your friendly Apache sysadmin if you dont know what this means. In this document, the path youll be keeping your .pwo files in is called /path/to/pwodir/, and its corresponding URL is http://yourserver/url/to/pwodir/.
Let Apache and mod_python know that the pwo.py will be handling requests to .pwo files in that directory. Do this by adding a few lines to our entry in your httpd.conf file.
AddHandler python-program .pwo
PythonHandler pwo
PythonDebug On
The PythonDebug directive is optional, but you will most likely want it enabled while you are developing. It will make exceptions print tracebacks to the browser in plain-text format. For security reasons, you should comment it out on production systems.
Now a file /path/to/pwodir/some_file.pwo will generate its page at http://yourserver/url/to/pwodir/some_file.pwo. Try copying a simple one of the included samples, like hello.pwo, to this directory to test your installation.
If youve never used PWO before, learn the syntax, and/or check out some sample pages.
Download the latest version, then read the documentation. If youre into antiques, you can always browse the archives, but theres no reason to use an old version.
To install PWO, first decompress the tarball you downloaded.
$ gunzip pwo-0.XX.tar.gz
$ tar xvf pwo-0.XX.tar
Then, copy the pwo.py module into some location in your PYTHONPATH. The proper location is usually /usr/local/lib/python2.x/site-packages/
$ cp pwo-0.XX/pwo.py /usr/local/lib/python2.2/site-packages/
PWO should now be ready to use.
To configure a directory to make PWO pages, you first need to make sure that the directory is visible on the web. Ask your friendly Apache sysadmin if you dont know what this means. In this document, the path youll be keeping your .pwo files in is called /path/to/pwodir/, and its corresponding URL is http://yourserver/url/to/pwodir/.
Let Apache and mod_python know that the pwo.py will be handling requests to .pwo files in that directory. Do this by adding a few lines to our entry in your httpd.conf file.
AddHandler python-program .pwo
PythonHandler pwo
PythonDebug On
The PythonDebug directive is optional, but you will most likely want it enabled while you are developing. It will make exceptions print tracebacks to the browser in plain-text format. For security reasons, you should comment it out on production systems.
Now a file /path/to/pwodir/some_file.pwo will generate its page at http://yourserver/url/to/pwodir/some_file.pwo. Try copying a simple one of the included samples, like hello.pwo, to this directory to test your installation.
If youve never used PWO before, learn the syntax, and/or check out some sample pages.
HTML Objects is a Perl module library for turning HTML tags into Perl objects. HTML Objects allows Web pages to be manipulated as a data structure rather than text.
Once manipulation is done, the entire page is generated via depth-first recursion.
Once manipulation is done, the entire page is generated via depth-first recursion.
Math Objects is a math template library written in C++ using generic programming techniques. In order to use the "Math Objects" library, the user only has to include the header files he needs (e.g. Matrix.h, Polynomial.h etc.).
In order to compile the library the user needs an ISO/IEC 14882:1998 standard compliant C++ compiler (e.g. one that supports partial template specializations).
The math library has math objects like matrices, polynomials, rational functions, extended precision numbers, complex numbers etc. that can be handled in a similar way like basic numerical types (e.g. integers or floating point numbers).
One can access properties of a mathematical type through a (partial) specialization of a traits class for that type (AlgebraicTraits). Having the traits classes to expose properties of mathematical objects, one can define for example matrices of polynomials having extended precision complex coefficients and apply to them basic linear algebra algorithms using normal C++ syntax.
This library also implements two functions using two deterministic algorithms that compute the Smith form for polynomial matrices, and the Smith-McMillan form of a transfer functions matrix also keeping track of the transformation matrices.
These algorithms can be used to describe a MIMO (multi input-multi output) system by means of its zeros and poles and also give the MFD (matrix fraction description) of the system.
Whats New in This Release:
· Recoded the LongInt class aiming for better runtime efficiency.
In order to compile the library the user needs an ISO/IEC 14882:1998 standard compliant C++ compiler (e.g. one that supports partial template specializations).
The math library has math objects like matrices, polynomials, rational functions, extended precision numbers, complex numbers etc. that can be handled in a similar way like basic numerical types (e.g. integers or floating point numbers).
One can access properties of a mathematical type through a (partial) specialization of a traits class for that type (AlgebraicTraits). Having the traits classes to expose properties of mathematical objects, one can define for example matrices of polynomials having extended precision complex coefficients and apply to them basic linear algebra algorithms using normal C++ syntax.
This library also implements two functions using two deterministic algorithms that compute the Smith form for polynomial matrices, and the Smith-McMillan form of a transfer functions matrix also keeping track of the transformation matrices.
These algorithms can be used to describe a MIMO (multi input-multi output) system by means of its zeros and poles and also give the MFD (matrix fraction description) of the system.
Whats New in This Release:
· Recoded the LongInt class aiming for better runtime efficiency.
Active Objects is an implementation of the Active Object concept based on the boost::thread, boost::bind, and boost::function libraries.
The point of the library is to make taking advantage of multiprocessor machines as easy as possible. The library provides two types of functionality. The first is the ability to execute a function in a separate thread and automatically synchronize with the thread when the return value is needed.
The second is the ability to easily create a message cue for any existing class, and have that class process its messages asynchronously.
Whats New in This Release:
· Minor code cleanup and code documentation updates.
The point of the library is to make taking advantage of multiprocessor machines as easy as possible. The library provides two types of functionality. The first is the ability to execute a function in a separate thread and automatically synchronize with the thread when the return value is needed.
The second is the ability to easily create a message cue for any existing class, and have that class process its messages asynchronously.
Whats New in This Release:
· Minor code cleanup and code documentation updates.
XAO::Web is a Perl module for XAO Web Developer, dynamic content building suite.
XAO::Web is a part of XAO open source web services suite. It allows to build dynamic web content using data, templates and external input.
The distinguishing feature of XAO::Web is in its modular design where almost every aspect of functionality can be altered and alterations can be re-used. No complex code is embedded in the templates which allows to upgrade code and templates separately or maintain multiple visual representations of the same functionality at the same time.
Aside from that most interesting features of XAO::Web are:
· Perl code is not mixed with templates. Templates can be normal HTML files if no processing is required.
· A specific site can replace or modify standard XAO::Web objects if required by overriding or extending their methods. You do not need to re-implement entire object to make a site specific change.
· In case of system object upgrade or bug fix there is no need to alter site-specific changes normally.
· Site can create any extension objects or embed third-party extensions as well.
· One server can serve arbitrary number of XAO::Web sites each with however extended functionality without creating any conflicts. That includes different modifications to the system objects for different sites.
· Not limited to Web environment, allows to build any dynamic content -- content of mail messages or reports for instance.
· Works with CGI or mod_perl (mod_perl is recommended for production grade sites).
If used in mod_perl mode improves performance by using caching of configuration, parsed templates, database handlers and so on.
· XAO::Web is by default integrated with XAO::FS (see XAO::FS) as a database layer, but this is not a requrement -- if for any reason a different database must be used for a site it can be easily and gracefully achieved.
· Hosting providers can allow their customers to build very complex sites without allowing them to execute arbitrary code, by allowing to modify only templates.
XAO::Web is a part of XAO open source web services suite. It allows to build dynamic web content using data, templates and external input.
The distinguishing feature of XAO::Web is in its modular design where almost every aspect of functionality can be altered and alterations can be re-used. No complex code is embedded in the templates which allows to upgrade code and templates separately or maintain multiple visual representations of the same functionality at the same time.
Aside from that most interesting features of XAO::Web are:
· Perl code is not mixed with templates. Templates can be normal HTML files if no processing is required.
· A specific site can replace or modify standard XAO::Web objects if required by overriding or extending their methods. You do not need to re-implement entire object to make a site specific change.
· In case of system object upgrade or bug fix there is no need to alter site-specific changes normally.
· Site can create any extension objects or embed third-party extensions as well.
· One server can serve arbitrary number of XAO::Web sites each with however extended functionality without creating any conflicts. That includes different modifications to the system objects for different sites.
· Not limited to Web environment, allows to build any dynamic content -- content of mail messages or reports for instance.
· Works with CGI or mod_perl (mod_perl is recommended for production grade sites).
If used in mod_perl mode improves performance by using caching of configuration, parsed templates, database handlers and so on.
· XAO::Web is by default integrated with XAO::FS (see XAO::FS) as a database layer, but this is not a requrement -- if for any reason a different database must be used for a site it can be easily and gracefully achieved.
· Hosting providers can allow their customers to build very complex sites without allowing them to execute arbitrary code, by allowing to modify only templates.
Oak::Web::HTML::B is B HTML Tag.
HIERARCHY
Oak::Object
Oak::Persistent
Oak::Component
Oak::Web::Visual
Oak::Web::HTML::PhraseElement
Oak::Web::HTML::B
PROPERTIES
The Oak::Web::HTML::B object has the following properties:
caption
The text inside the tag
All other defined by W3C.
This component will use all the available properties following the rules of HTML4.01
HIERARCHY
Oak::Object
Oak::Persistent
Oak::Component
Oak::Web::Visual
Oak::Web::HTML::PhraseElement
Oak::Web::HTML::B
PROPERTIES
The Oak::Web::HTML::B object has the following properties:
caption
The text inside the tag
All other defined by W3C.
This component will use all the available properties following the rules of HTML4.01
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/
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/
XAO::Web is a part of XAO open source web services suite. It allows to build dynamic web content using data, templates and external input.
The distinguishing feature of XAO::Web is in its modular design where almost every aspect of functionality can be altered and alterations can be re-used. No complex code is embedded in the templates which allows to upgrade code and templates separately or maintain multiple visual representations of the same functionality at the same time.
Installation
perl Makefile.PL
make
make test
sudo make install
Saying "install XAO::Web" from the CPAN shell is a good way too:
perl -MCPAN -eshell
install XAO::Web
Using CPAN shell is usually the best way because all dependencies will be resolved automatically.
If you do manual installation then XAO::Web depends on at least the following modules (look into Makefile.PL or just watch closely the output of `perl Makefile.PL for additional dependencies):
XAO::Base
XAO::FS
Digest::MD5
Error
MIME::Lite
Test::Unit
When you run "perl Makefile.PL" you will be asked for XAO::Web test database. That database is only used when you do `make test and it have to exist. It does not matter what is inside the database, it will be completely wiped out for each test case.
Normally the database should be the same that you have used for XAO::FS tests and in case of MySQL is usually test or test_fs.
The directory where templates get installed is the same that you gave to XAO::Base when you installed it. Normally that directory is /usr/local/xao -- we will assume that for the rest of the document.
Here are some key features of "XAO Web Developer":
· Perl code is not mixed with templates. Templates can be normal HTML files if no processing is required.
· A specific site can replace or modify standard XAO::Web objects if required by overriding or extending their methods. You do not need to re-implement entire object to make a site specific change. In case of system object upgrade or bug fix there is no need to alter site-specific changes normally.
· Site can create any extension objects or embed third-party extensions as well.
· One server can serve arbitrary number of XAO::Web sites each with however extended functionality without creating any conflicts. That includes different modifications to the system objects for different sites.
· Not limited to Web environment, allows to build any dynamic content -- content of mail messages or reports for instance.
· Works with CGI or mod_perl (mod_perl is recommended for production grade sites).
· If used in mod_perl mode improves performance by using caching of configuration, parsed templates, database handlers and so on.
· XAO::Web is by default integrated with XAO::FS (see XAO::FS) as a database layer, but this is not a requrement -- if for any reason a different database must be used for a site it can be easily and gracefully achieved.
· Hosting providers can allow their customers to build very complex sites without allowing them to execute arbitrary code, by allowing to modify only templates.
Whats New in This Release:
· Fixed a problem with Web.pm for mod_perl usage, introduced last minute just before releasing 1.06
The distinguishing feature of XAO::Web is in its modular design where almost every aspect of functionality can be altered and alterations can be re-used. No complex code is embedded in the templates which allows to upgrade code and templates separately or maintain multiple visual representations of the same functionality at the same time.
Installation
perl Makefile.PL
make
make test
sudo make install
Saying "install XAO::Web" from the CPAN shell is a good way too:
perl -MCPAN -eshell
install XAO::Web
Using CPAN shell is usually the best way because all dependencies will be resolved automatically.
If you do manual installation then XAO::Web depends on at least the following modules (look into Makefile.PL or just watch closely the output of `perl Makefile.PL for additional dependencies):
XAO::Base
XAO::FS
Digest::MD5
Error
MIME::Lite
Test::Unit
When you run "perl Makefile.PL" you will be asked for XAO::Web test database. That database is only used when you do `make test and it have to exist. It does not matter what is inside the database, it will be completely wiped out for each test case.
Normally the database should be the same that you have used for XAO::FS tests and in case of MySQL is usually test or test_fs.
The directory where templates get installed is the same that you gave to XAO::Base when you installed it. Normally that directory is /usr/local/xao -- we will assume that for the rest of the document.
Here are some key features of "XAO Web Developer":
· Perl code is not mixed with templates. Templates can be normal HTML files if no processing is required.
· A specific site can replace or modify standard XAO::Web objects if required by overriding or extending their methods. You do not need to re-implement entire object to make a site specific change. In case of system object upgrade or bug fix there is no need to alter site-specific changes normally.
· Site can create any extension objects or embed third-party extensions as well.
· One server can serve arbitrary number of XAO::Web sites each with however extended functionality without creating any conflicts. That includes different modifications to the system objects for different sites.
· Not limited to Web environment, allows to build any dynamic content -- content of mail messages or reports for instance.
· Works with CGI or mod_perl (mod_perl is recommended for production grade sites).
· If used in mod_perl mode improves performance by using caching of configuration, parsed templates, database handlers and so on.
· XAO::Web is by default integrated with XAO::FS (see XAO::FS) as a database layer, but this is not a requrement -- if for any reason a different database must be used for a site it can be easily and gracefully achieved.
· Hosting providers can allow their customers to build very complex sites without allowing them to execute arbitrary code, by allowing to modify only templates.
Whats New in This Release:
· Fixed a problem with Web.pm for mod_perl usage, introduced last minute just before releasing 1.06
Rose::HTML::Objects is a Perl object-oriented interfaces for HTML.
SYNOPSIS
use Rose::HTML::Form;
$form = Rose::HTML::Form->new(action => /foo,
method => post);
$form->add_fields
(
name => { type => text, size => 20, required => 1 },
height => { type => text, size => 5, maxlength => 5 },
bday => { type => datetime },
);
$form->params(name => John, height => 6ft, bday => 01/24/1984);
$form->init_fields();
$bday = $form->field(bday)->internal_value; # DateTime object
print $bday->strftime(%A); # Tuesday
print $form->field(bday)->html;
The Rose::HTML::Object::* family of classes represent HTML tags, or groups of tags. These objects allow HTML to be arbitrarily manipulated, then serialized to actual HTML (or XHTML). Currently, the process only works in one direction. Objects cannot be constructed from their serialized representations. In practice, given the purpose of these modules, this is not an important limitation.
Any HTML tag can theoretically be represented by a Rose::HTML::Object-derived class, but this family of modules was originally motivated by a desire to simplify the use of HTML forms.
The form/field object interfaces have been heavily abstracted to allow for input and output filtering, inflation/deflation of values, and compound fields (fields that contain other fields). The classes are also designed to be subclassed. The creation of custom form and field subclasses is really the "big win" for these modules.
There is also a simple image tag class which is useful for auto-populating the width and height attributes of img tags. Future releases may include object representations of other HTML tags. Contributions are welcome.
SYNOPSIS
use Rose::HTML::Form;
$form = Rose::HTML::Form->new(action => /foo,
method => post);
$form->add_fields
(
name => { type => text, size => 20, required => 1 },
height => { type => text, size => 5, maxlength => 5 },
bday => { type => datetime },
);
$form->params(name => John, height => 6ft, bday => 01/24/1984);
$form->init_fields();
$bday = $form->field(bday)->internal_value; # DateTime object
print $bday->strftime(%A); # Tuesday
print $form->field(bday)->html;
The Rose::HTML::Object::* family of classes represent HTML tags, or groups of tags. These objects allow HTML to be arbitrarily manipulated, then serialized to actual HTML (or XHTML). Currently, the process only works in one direction. Objects cannot be constructed from their serialized representations. In practice, given the purpose of these modules, this is not an important limitation.
Any HTML tag can theoretically be represented by a Rose::HTML::Object-derived class, but this family of modules was originally motivated by a desire to simplify the use of HTML forms.
The form/field object interfaces have been heavily abstracted to allow for input and output filtering, inflation/deflation of values, and compound fields (fields that contain other fields). The classes are also designed to be subclassed. The creation of custom form and field subclasses is really the "big win" for these modules.
There is also a simple image tag class which is useful for auto-populating the width and height attributes of img tags. Future releases may include object representations of other HTML tags. Contributions are welcome.
10
Programming -> Quality-Assurance-and-Testing
GPL GNU General Public License
Hide show
mockpp is a platform independent generic unit testing framework for C++. Mock Objects for C++ goal is to facilitate developing unit tests in the spirit of Mock Objects for Java, EasyMock and jMock.
Mock objects allow you to set up predictible behaviour to help you test your production code by emulating some functionality your code depends on. This might for example be a huge database which is too difficult and time consuming to maintain just for testing purposes.
Originally I started with a port of MockObjects to C++ and wanted to keep the same interfaces. But in the meanwhile I found out more about Java and its differencens to C++ (its funny reflection api for example ) and so I had to change a bunch of details.
Additionally I included the working method of EasyMock. From my limited understanding of Java there seems to be something similar in MockObjects but I guess EasyMock is easier to use and certainly was easier to port to C++.
Whats New in This Release:
· This release fixes a compilation issue on Mac OS platforms and a parsing problem with mockpp2xml.
Mock objects allow you to set up predictible behaviour to help you test your production code by emulating some functionality your code depends on. This might for example be a huge database which is too difficult and time consuming to maintain just for testing purposes.
Originally I started with a port of MockObjects to C++ and wanted to keep the same interfaces. But in the meanwhile I found out more about Java and its differencens to C++ (its funny reflection api for example ) and so I had to change a bunch of details.
Additionally I included the working method of EasyMock. From my limited understanding of Java there seems to be something similar in MockObjects but I guess EasyMock is easier to use and certainly was easier to port to C++.
Whats New in This Release:
· This release fixes a compilation issue on Mac OS platforms and a parsing problem with mockpp2xml.
11
Miscellaneous -> Information-Management
GPL GNU General Public License
Hide show
DMO stands for "Database of Managed Objects." This is a tool for documenting all objects within a data center.
Database of Managed Objects provides an object-based overlay on a MySQL database, with a Web-based interface, which allows new objects to be defined in a hierarchy.
Each object can have attributes defined, which are inherited by objects below in the hierarchy. Information can be imported in CSV or XML format, and reports can be produced in XML, CSV, PDF and HTML formats.
DMO uses PHP and MySQL to support documentation of all network and system objects within your computing environment. It offers a Web interface that enables easy navigation through objects, instances and attributes, with XML and access controls.
Whats New in This Release:
· This is the first significant release of DMO for nearly two years.
· It works with Linux and Windows (XAMPP), but should work well with any LAMP stack including PHP4.
· New features include much more graphical viewing, as well as mapping objects onto maps with drill-down to additional layers of maps following dependency trails, a new Flash viewer for browsing through objects, and the ability to create chains of objects based on any attribute type (where any other object can be an attribute of any other object).
Database of Managed Objects provides an object-based overlay on a MySQL database, with a Web-based interface, which allows new objects to be defined in a hierarchy.
Each object can have attributes defined, which are inherited by objects below in the hierarchy. Information can be imported in CSV or XML format, and reports can be produced in XML, CSV, PDF and HTML formats.
DMO uses PHP and MySQL to support documentation of all network and system objects within your computing environment. It offers a Web interface that enables easy navigation through objects, instances and attributes, with XML and access controls.
Whats New in This Release:
· This is the first significant release of DMO for nearly two years.
· It works with Linux and Windows (XAMPP), but should work well with any LAMP stack including PHP4.
· New features include much more graphical viewing, as well as mapping objects onto maps with drill-down to additional layers of maps following dependency trails, a new Flash viewer for browsing through objects, and the ability to create chains of objects based on any attribute type (where any other object can be an attribute of any other object).
Web Perl module contains a set of useful routines for many webworking purposes.
This module was primarily made for UNIX/Linux-Systems. Parts of it cannot be used on other systems. E.g. the procedures for file locking demand systems that can use symlinks. If you use the modul on systems where symlinks cannot be used, fatal errors may happen.
ABSTRACT
This perl module serves users with several useful routines for many purposes, like generating webpages, processing CGI scripts, working with XML datafiles and net-connections. It also uses own variants of routines, that was invented first in the famous libraries CGI.pm and cgi-lib.pl.
INSTALLATION
If you dont have sufficient privileges to install web.pm in the Perl library directory, you can put web.pm into some convenient spot, such as your home directory, or in cgi-bin itself and prefix all Perl scripts that call it with something along the lines of the following preamble:
use lib /home/myname/perl/lib;
use web;
NLock
This routine allows to set a filelock across NFS-boundaries. The common used perl-routine flock() fails at this point, so this routine is a useable alternative for bigger file-systems. It uses the modular functions link() and unlink() to mark a file locked. In addition to this, it also gives the locked file a counter: A file that is locked for more than $web::MAX_LOCKTIME seconds will be freed by the next process that calls NLock() on this file. A calling process gets either 0 or 1 as a return value, where 1 is returned if the file-locking was successful. 0 is returned only if the process waits for more than $web::MAX_WAITLOCK seconds or if symlink() fails.
Example 1:
$filename = "data.txt";
NLock($filename);
open(f1,"$filename");
# do something
close f1;
NUnlock($filename);
Example 2:
#!/local/bin/perl5
use web;
$stat= &NLock("jump.pl");
print "Lock: stat= $statn";
$stat= &NLock("jump.pl");
print "Lock this file again: stat= $statn";
sleep 8;
$stat= &NLock("jump.pl");
print "Lock this file again: stat= $statn";
$stat= &NUnlock("jump.pl");
print "Unlock: stat= $statn";
exit;
This module was primarily made for UNIX/Linux-Systems. Parts of it cannot be used on other systems. E.g. the procedures for file locking demand systems that can use symlinks. If you use the modul on systems where symlinks cannot be used, fatal errors may happen.
ABSTRACT
This perl module serves users with several useful routines for many purposes, like generating webpages, processing CGI scripts, working with XML datafiles and net-connections. It also uses own variants of routines, that was invented first in the famous libraries CGI.pm and cgi-lib.pl.
INSTALLATION
If you dont have sufficient privileges to install web.pm in the Perl library directory, you can put web.pm into some convenient spot, such as your home directory, or in cgi-bin itself and prefix all Perl scripts that call it with something along the lines of the following preamble:
use lib /home/myname/perl/lib;
use web;
NLock
This routine allows to set a filelock across NFS-boundaries. The common used perl-routine flock() fails at this point, so this routine is a useable alternative for bigger file-systems. It uses the modular functions link() and unlink() to mark a file locked. In addition to this, it also gives the locked file a counter: A file that is locked for more than $web::MAX_LOCKTIME seconds will be freed by the next process that calls NLock() on this file. A calling process gets either 0 or 1 as a return value, where 1 is returned if the file-locking was successful. 0 is returned only if the process waits for more than $web::MAX_WAITLOCK seconds or if symlink() fails.
Example 1:
$filename = "data.txt";
NLock($filename);
open(f1,"$filename");
# do something
close f1;
NUnlock($filename);
Example 2:
#!/local/bin/perl5
use web;
$stat= &NLock("jump.pl");
print "Lock: stat= $statn";
$stat= &NLock("jump.pl");
print "Lock this file again: stat= $statn";
sleep 8;
$stat= &NLock("jump.pl");
print "Lock this file again: stat= $statn";
$stat= &NUnlock("jump.pl");
print "Unlock: stat= $statn";
exit;
C++ Machine Objects class library supports a subset of the UML statechart notation for implementing hierarchical state machines in straight C++, similar in spirit to the GoF "State" design pattern.
The currently supported features are hierarchical states, entry and exit actions, state histories, and state variables.
Installation:
The class library as such does not need to be installed. Just include the header file Macho.hpp to make use of it. Prerequisite however is a C++ compiler with sane support for templates.
Included are the example state machines HelloWorld, Example, Microwave and Test. To make the examples run just compile them in the directory they are in, for example:
# GCC
g++ -o microwave Microwave.cpp
# MSVC7
cl /EHsc Microwave.cpp
I like the GoF "State" design pattern. It enables implementing the important concept of state machines with common programming language features. By utilising only basic language mechanisms it is easy to apply in real-life software development.
Another important property that stems from this simplicity is orthogonality, meaning that the pattern can be combined with other design elements, patterns and idioms in arbitrary ways.
In contrast stand the tool supported approaches to state machine creation (of which there is no shortage). Based on code generators and graphical editors, they tend to generate incomprehensible code and forfeit orthogonality by necessarily being outside the domain of the programming language.
Unfortunately the "State" pattern is limited in scope because it does not allow for hierarchical state machines. This is regrettable because flat state machines tend to become unwieldy when getting bigger, for the sheer number of states they produce.
Hierarchical state machines as defined by the statechart notation alleviate this problem by giving an additional structural element through grouping states into hierarchies.
The "State" pattern in its original form is not capable of modeling state hierarchies. The Macho class library extends the concept with this possibility, while keeping the properties of simplicity (there possible) and tool independence from its inspiration.
Whats New in This Release:
· This release adds the feature of backtracking to previous states by using "Snapshots".
The currently supported features are hierarchical states, entry and exit actions, state histories, and state variables.
Installation:
The class library as such does not need to be installed. Just include the header file Macho.hpp to make use of it. Prerequisite however is a C++ compiler with sane support for templates.
Included are the example state machines HelloWorld, Example, Microwave and Test. To make the examples run just compile them in the directory they are in, for example:
# GCC
g++ -o microwave Microwave.cpp
# MSVC7
cl /EHsc Microwave.cpp
I like the GoF "State" design pattern. It enables implementing the important concept of state machines with common programming language features. By utilising only basic language mechanisms it is easy to apply in real-life software development.
Another important property that stems from this simplicity is orthogonality, meaning that the pattern can be combined with other design elements, patterns and idioms in arbitrary ways.
In contrast stand the tool supported approaches to state machine creation (of which there is no shortage). Based on code generators and graphical editors, they tend to generate incomprehensible code and forfeit orthogonality by necessarily being outside the domain of the programming language.
Unfortunately the "State" pattern is limited in scope because it does not allow for hierarchical state machines. This is regrettable because flat state machines tend to become unwieldy when getting bigger, for the sheer number of states they produce.
Hierarchical state machines as defined by the statechart notation alleviate this problem by giving an additional structural element through grouping states into hierarchies.
The "State" pattern in its original form is not capable of modeling state hierarchies. The Macho class library extends the concept with this possibility, while keeping the properties of simplicity (there possible) and tool independence from its inspiration.
Whats New in This Release:
· This release adds the feature of backtracking to previous states by using "Snapshots".
SVN::Web provides a Web interface to Subversion repositories.
You can browse the tree, view history of a directory or a file, see whats changed in a specific revision, track changes with RSS, and also view diffs.
SVN::Web also tracks the branching feature (node copy) of Subversion, so you can easily see the relationship between branches.
Whats New in This Release:
· The "reposparent" functionality was inadvertently broken in 0.50.
· This release fixes it.
You can browse the tree, view history of a directory or a file, see whats changed in a specific revision, track changes with RSS, and also view diffs.
SVN::Web also tracks the branching feature (node copy) of Subversion, so you can easily see the relationship between branches.
Whats New in This Release:
· The "reposparent" functionality was inadvertently broken in 0.50.
· This release fixes it.
web-nsupdate is a web-based dynamic DNS update utility.
The web-nsupdate package provides a simple, web-based facility for clients to send dynamic DNS updates. Clients are typically DHCP hosts, such as a Linux system acting as a gateway for residential broadband service.
The client sends a simple web request (such as with the wget(1) or lynx(1) commands) to the web-nsupdate service to register their host request.
This package has been tested on a server with the following Debian packages:
* bind9 (ver 9.2.4-1)
* apache2 (ver 2.0.54-5)
* php4 (ver 4.3.10-16)
BE ADVISED: Its a pain in the butt to configure BIND to do dynamic DNS. You are going to need to do that to make "web-nsupdate" work. These instructions describe that process, so follow carefully. I *strongly* urge you to review the dnssec-keygen(8) and nsupdate(8) man pages first, so you can get some idea of what we are trying to accomplish.
Installation Instructions:
1. Copy the "web-nsupdate" files to a location such as
"/usr/local/lib/web-nsupdate". It is OK to install somewhere else,
just adjust the following directions accordingly.
2. Generate a TSIG key that "web-nsupdate" will use to authenticate
itself to the DNS server.
SECURE THIS KEY! Do not leave readable copies around. This key can
be used to make changes to DNS records managed by "web-nsupdate".
Here are the steps to generate the key:
cd /usr/local/lib/web-nsupdate
/usr/sbin/dnssec-keygen -a HMAC-MD5 -b 512 -n HOST web-nsupdate
chmod 440 Kweb-nsupdate*
# Below, adjust "www-data" to the GID your web server runs under.
chgrp www-data Kweb-nsupdate*
3. Setup the "web-nsupdate" definitions file, starting with the provided
sample. This file needs to be secured, to protect the client passwords
from being revealed.
cd /usr/local/lib/web-nsupdate
cp nsupdate-defs.php.sample nsupdate-defs.php
chmod 640 nsupdate-defs.php
# Below, adjust "www-data" to the GID your web server runs under.
chgrp www-data nsupdate-defs.php
vi nsupdate-defs.php
4. Verify that "nsupdate.php" has the correct path to the "nsupdate-defs.php"
file.
vi nsupdate.php
# Check the require_once() statement near the top.
5. Symlink the update script into your web site.
# Below, adjust "/var/www/nsupdate.php" to a location in your web server.
ln -s /usr/local/lib/web-nsupdate/nsupdate.php /var/www/nsupdate.php
At this point, the "web-nsupdate" front-end is configured. Now to
configure the nameserver back-end.
6. Assuming you dont already have a place for nameserver keys, create
a new file called "named.keys" that contains the TSIG key that
"web-nsupdate" will use. The file will look something like:
key web-nsupdate {
algorithm HMAC-MD5;
secret "jzzoMR4ocgZGq5pQho2Pr5r9DDHT4lWK8QO09cpvVtpvHqaUdzktBs1DHCslpPR8PwXU3ni8zjST/5FxEwg44Q==";
};
Replace the "secret" value show above with the key in the
"Kweb-nsupdate.+157+nnnnn.private" file you generated in step 2.
7. Install the "named.keys" file to the directory where your "named.conf"
resides. This file needs to be secured, to protect your namesever
from unauthorized updates.
If your "named.conf" directory is "/etc/bind", do:
# Below, adjust /etc/bind to directory where named.conf lives.
mv named.keys /etc/bind/named.keys
chmod 400 /etc/bind/named.keys
# Below, adjust "bind:bind" to the UID:GID your nameserver runs under.
chown bind:bind /etc/bind/named.keys
8. Add a line to your "named.conf" that says:
include "named.keys";
9. Modify your "named.conf" to list each host that web-nsupdate will
be updating. If, for example, you want to allow dynamic updates
from hosts "host1.example.com" and "host2.example.com", then modify
the "example.com" stanza in "named.conf" and add two lines:
zone "example.com" {
type master;
.
.
.
# add the lines below, one per host in thie zone
update-policy {
grant web-nsupdate. name host1.example.com. A;
grant web-nsupdate. name host2.example.com. A;
};
};
10. Test the update capability. Point your web browser to the installed
"nsupdate.php" script. This should bring up a form for manual
entry. Submit your entry, and verify the update was successful.
The web-nsupdate package provides a simple, web-based facility for clients to send dynamic DNS updates. Clients are typically DHCP hosts, such as a Linux system acting as a gateway for residential broadband service.
The client sends a simple web request (such as with the wget(1) or lynx(1) commands) to the web-nsupdate service to register their host request.
This package has been tested on a server with the following Debian packages:
* bind9 (ver 9.2.4-1)
* apache2 (ver 2.0.54-5)
* php4 (ver 4.3.10-16)
BE ADVISED: Its a pain in the butt to configure BIND to do dynamic DNS. You are going to need to do that to make "web-nsupdate" work. These instructions describe that process, so follow carefully. I *strongly* urge you to review the dnssec-keygen(8) and nsupdate(8) man pages first, so you can get some idea of what we are trying to accomplish.
Installation Instructions:
1. Copy the "web-nsupdate" files to a location such as
"/usr/local/lib/web-nsupdate". It is OK to install somewhere else,
just adjust the following directions accordingly.
2. Generate a TSIG key that "web-nsupdate" will use to authenticate
itself to the DNS server.
SECURE THIS KEY! Do not leave readable copies around. This key can
be used to make changes to DNS records managed by "web-nsupdate".
Here are the steps to generate the key:
cd /usr/local/lib/web-nsupdate
/usr/sbin/dnssec-keygen -a HMAC-MD5 -b 512 -n HOST web-nsupdate
chmod 440 Kweb-nsupdate*
# Below, adjust "www-data" to the GID your web server runs under.
chgrp www-data Kweb-nsupdate*
3. Setup the "web-nsupdate" definitions file, starting with the provided
sample. This file needs to be secured, to protect the client passwords
from being revealed.
cd /usr/local/lib/web-nsupdate
cp nsupdate-defs.php.sample nsupdate-defs.php
chmod 640 nsupdate-defs.php
# Below, adjust "www-data" to the GID your web server runs under.
chgrp www-data nsupdate-defs.php
vi nsupdate-defs.php
4. Verify that "nsupdate.php" has the correct path to the "nsupdate-defs.php"
file.
vi nsupdate.php
# Check the require_once() statement near the top.
5. Symlink the update script into your web site.
# Below, adjust "/var/www/nsupdate.php" to a location in your web server.
ln -s /usr/local/lib/web-nsupdate/nsupdate.php /var/www/nsupdate.php
At this point, the "web-nsupdate" front-end is configured. Now to
configure the nameserver back-end.
6. Assuming you dont already have a place for nameserver keys, create
a new file called "named.keys" that contains the TSIG key that
"web-nsupdate" will use. The file will look something like:
key web-nsupdate {
algorithm HMAC-MD5;
secret "jzzoMR4ocgZGq5pQho2Pr5r9DDHT4lWK8QO09cpvVtpvHqaUdzktBs1DHCslpPR8PwXU3ni8zjST/5FxEwg44Q==";
};
Replace the "secret" value show above with the key in the
"Kweb-nsupdate.+157+nnnnn.private" file you generated in step 2.
7. Install the "named.keys" file to the directory where your "named.conf"
resides. This file needs to be secured, to protect your namesever
from unauthorized updates.
If your "named.conf" directory is "/etc/bind", do:
# Below, adjust /etc/bind to directory where named.conf lives.
mv named.keys /etc/bind/named.keys
chmod 400 /etc/bind/named.keys
# Below, adjust "bind:bind" to the UID:GID your nameserver runs under.
chown bind:bind /etc/bind/named.keys
8. Add a line to your "named.conf" that says:
include "named.keys";
9. Modify your "named.conf" to list each host that web-nsupdate will
be updating. If, for example, you want to allow dynamic updates
from hosts "host1.example.com" and "host2.example.com", then modify
the "example.com" stanza in "named.conf" and add two lines:
zone "example.com" {
type master;
.
.
.
# add the lines below, one per host in thie zone
update-policy {
grant web-nsupdate. name host1.example.com. A;
grant web-nsupdate. name host2.example.com. A;
};
};
10. Test the update capability. Point your web browser to the installed
"nsupdate.php" script. This should bring up a form for manual
entry. Submit your entry, and verify the update was successful.
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above supportsoft web objects 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
Featured Software
Want to place your software product here?
Please contact us for consideration.
Contact WareSeeker.com
Sponsored Links
Related Information
Top Popular Software
Editor's Picks Software