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

Diff for /pegasus/doc/Attic/TODO between version 1.1 and 1.25

version 1.1, 2001/01/14 19:50:19 version 1.25, 2001/04/27 00:00:59
Line 1 
Line 1 
                                 TO-DO List  
                                 ==========  
  
     ------------------------------------------------------------------------  Topical To-Do List
   ==================
  
     (B) Rework resolve() scheme (add clone() methods).  -   Instances:
  
     (A) Implement instances.      -   Implement CIMRepository::getProperty()
  
     (A) Providers.      -   Implement CIMRepository::setProperty()
  
     (A) Port to Windows.      -   Implement CIMRepository::deleteInstance()
  
     ------------------------------------------------------------------------      -   Implement CIMRepository::modifyInstance()
  
     (B) Finish other CIM/HTTP protocol operations.      -   Implement CIMRepository::enumerateInstances()
  
     (B) Use the description that comes back with an error code in the XML      -   Implement CIMRepository::enumerateInstanceNames()
         protocol. Perhaps it should become an extra message field of  
         XmlException.  
  
     (B) Source documentation.      -   Handle inheritance in all instance operations.
  
     (B) Put README in each directory.      -   Double check that all these operations work across protocol.
  
     (B) Handle UCS2 characters in XML (parsing and writing).      -   Check that they have keys during validation.
  
     (B) Check for overflow on the number of attributes in XML.  -   Associations:
  
     (B) Handle PARAMETER.REFARRAY in XML.      -   Implement CIMRepository::referencesOf()
  
     (B) Add validNamespace() method and use it.      -   Implement CIMRepository::associatorsOf()
  
     (B) Finish Pegasus-CGI interface:      -   Implement protocol stubs for these operations.
  
         Add GetMethod.cgi.  -   Exceptions:
         Add propagated and class-origin columns.  
         Add flavor column to qualifiers.  
  
     ------------------------------------------------------------------------      -   Clean up and consolidate exception classes.
  
     (C) Implement Strings that point to preallocated char* that will      -   Propagate underlying error messages across the CIM protocol.
         remain in scope?  
  
     (C) Suppress error message printed by ACE caused by constructing an  -   References:
         address from a non existent host.  
  
     (C) Ignore extraneous XML elements (loosely valid).      -   Validate arguments to CIMReference compound constructor and modifiers.
           (namespaces, hosts, classnames, and keybindings)
  
     (C) Get rid of fullyQualified flag.      -   Be sure that escape sequences are handled inside of object names. For
           example:
  
     (C) Handling of hexadecimal integer values.              X.key1="Hello \"You\""
  
     (C) VALUE.REFERENCE within INSTANCENAME and KEYBINDING.  -   Protocol:
  
     (C) Resolve whether MOF is a requirement.      -   Improve protocol tracing to show messages in both directions.
  
     (C) Handle case sensitivity of CIM identifiers.      -   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.
  
     (C) Figure out how to handle CIM null values.      -   Figure out how to handle getProperty() return type.
  
     (C) Make iteration scheme more general.      -   Provide ACE Channel implementation (for porting purposes)?
  
     (C) Develop XML repository importation mechanism.      -   Handle PARAMETER.REFARRAY in Procotol?
  
     (C) Move internal headers to ./internal directory      -   Ignore extraneous XML elements (loosely valid).
  
     (C) Split up XxxRep objects from Xxx objects.  -   Porting:
  
     (C) Handle case insentive requirement on repository file names.      -   Replace "std::something" with "STD(something)"
  
     (C) Devise a way to detect whether a class has instances.      -   Replace "using namespace std" with "USING_NAMESPACE_PEGASUS"
  
     (C) Cleanup of execeptions.  -   Aesthetics/Consistency/Usability:
  
     (C) Verify that fixed length arrays are properly handled.      -   Change getLength() and getSize() to just size(): "Brevity is the soul
           of genius and of Lingerie".
  
     (C) Check for null string pointers in String class.      -   Add methods to get objects by their names, in addition to index. For
           example:
  
     (C) Verify that instances are property keyed (during validation).              CIMProperty CIMClass::getProperty(const String& name);
  
     (C) Thread safety.      -   Perform walkthrough to expose consistency problems.
  
     (C) Use UTF8 for strings.      -   Distinguish between private and public classes (otherwise, users may
           come to depend on classes with unstable interfaces).
  
     (C) Shrink object sizes.  -   Documentation:
  
     (C) Use lighter I/O system (get rid of C++ streams).      -   Suggest newlines after methods.
  
     (C) Provide conversion between DateTime and time_t.      -   Suggest use of "/** ... */" instead of "///"
  
     (C) Purify source.      -   Refine header file documentation.
  
     (C) Improve the representation of fixed arrays (is that pesky fixed-array      -   Write Pegasus Architecture Paper.
         flag really necessary?)  
       -   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).


Legend:
Removed from v.1.1  
changed lines
  Added in v.1.25

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2