(file) Return to TODO CVS log (file) (dir) Up to [Pegasus] / pegasus / doc

File: [Pegasus] / pegasus / doc / Attic / TODO (download)
Revision: 1.26, Fri Apr 27 17:46:20 2001 UTC (23 years ago) by mike
Branch: MAIN
CVS Tags: TASK-PEP362_RestfulService-merged_out_from_trunk, TASK-PEP348_SCMO-merged_out_from_trunk, TASK-PEP317_pullop-merged_out_from_trunk, TASK-PEP317_pullop-merged_in_to_trunk, TASK-PEP311_WSMan-root, TASK-PEP311_WSMan-branch, RELEASE_2_5_0-RC1, HPUX_TEST, HEAD
Changes since 1.25: +0 -0 lines
FILE REMOVED
Added function objects to HashTable (EqualFunc and HashFunc).
Extended implementation of Inheritance tree.


Topical To-Do List
==================

-   Instances:

    -   Implement CIMRepository::getProperty()

    -   Implement CIMRepository::setProperty()

    -   Implement CIMRepository::deleteInstance()

    -   Implement CIMRepository::modifyInstance()

    -   Implement CIMRepository::enumerateInstances()

    -   Implement CIMRepository::enumerateInstanceNames()

    -   Handle inheritance in all instance operations.

    -	Double check that all these operations work across protocol.

    -   Check that they have keys during validation.

-   Associations:

    -   Implement CIMRepository::referencesOf()

    -   Implement CIMRepository::associatorsOf()

    -	Implement protocol stubs for these operations.

-   Exceptions:

    -	Clean up and consolidate exception classes.

    - 	Propagate underlying error messages across the CIM protocol.

-   References:

    -	Validate arguments to CIMReference compound constructor and modifiers.
	(namespaces, hosts, classnames, and keybindings)

    -   Be sure that escape sequences are handled inside of object names. For
	example:

	    X.key1="Hello \"You\""

-   Protocol:

    -   Improve protocol tracing to show messages in both directions.

    - 	The TCPChannel::writeN() method blocks when the client and server
	are in the same process. That is because the client cannot read
	anything as long as writeN() is blocked on a synchronous write.

    - 	Figure out how to handle getProperty() return type.

    -   Provide ACE Channel implementation (for porting purposes)?

    -   Handle PARAMETER.REFARRAY in Procotol?

    -   Ignore extraneous XML elements (loosely valid).

-   Porting:

    -	Replace "std::something" with "STD(something)"

    -   Replace "using namespace std" with "USING_NAMESPACE_PEGASUS"

-   Aesthetics/Consistency/Usability:

    -  	Change getLength() and getSize() to just size(): "Brevity is the soul
	of genius and of Lingerie". 

    -  	Add methods to get objects by their names, in addition to index. For
	example:

	    CIMProperty CIMClass::getProperty(const String& name);

    -   Perform walkthrough to expose consistency problems.

    -   Distinguish between private and public classes (otherwise, users may
	come to depend on classes with unstable interfaces).

-   Documentation:

    -   Suggest newlines after methods.

    -   Suggest use of "/** ... */" instead of "///"

    -	Refine header file documentation.

    -	Write Pegasus Architecture Paper.

    -   Integrate DOC++ with make system (put all docs in doc tree):

-   Namespaces:

    -   Implement create and destroy namespace (according to the standard).

-   Providers

    -   Add CIM-Server handles to provider interface.

    -   Implement MOF provider registration scheme (according to the standard).

-   WBEM Query Language

    -	Find someone to work on standard.

    -   Implement leve-1 parser.

-   MOF compiler:

    -   Work with Bob to identify work items.

-   Threading

    -   Write thread queuing document (input and output thread queue per
	provider).

    -   Implement queuing.

    -   Make reference counted objects thread safe (Mutexing and atomic
	increments).

-   Connectors

    -   Work out basic concepts (write paper).

    -	Package up pegasus in Install Shield application.


-   Install

    -   Need install mechanism for Unix and Windows.

-   Interoperability

    -   Fix reported bugs.

-   Internationalization

    - Handle UCS2 characters in XML (parsing and writing).

-   Repository:

    - Export to MOF.

-   Miscellaneous

    - Figure out how to handle CIM null values.

    - Generalize iteration.

    - Figure out how inheritance of keys works.

    - Investiage weak assocations.

    - Provide conversions between DateTime and time_t.

-   Constraint hanlding

    - Enforce constraint qualifiers.

    - Disallow resetting size of fixed length arrays.

-   Optimization/Tuning

    -   Shrink object sizes.

    -   Use lighter I/O system (than C++ streams).

    -   Run Purify on all sources (port to Sun first).

    -   Optimize clear method on arrays (to not release memory).

-   Porting

    -   Port to Solaris

    -   Port to HPUX

    -   Port to AIX

-   Testing

    -   Run Purify on all sources (port to Sun first).

    -   Run CIM/XML test suite.

-   Server

    -   Use Service class in cimserver

    -   Implement Service class on Unix (daemonization from Comer book).

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2