(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.24

version 1.1, 2001/01/14 19:50:19 version 1.24, 2001/04/26 19:42:07
Line 1 
Line 1 
   
                                 TO-DO List                                 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
  
     (B) Rework resolve() scheme (add clone() methods).      -   Find someone to work on standard.
  
     (A) Implement instances.      -   Implement leve-1 parser.
  
     (A) Providers.  -   MOF compiler:
  
     (A) Port to Windows.      -   Work with Bob to identify work items.
  
     ------------------------------------------------------------------------  -   Threading
  
     (B) Finish other CIM/HTTP protocol operations.      -   Write thread queuing document (input and output thread queue per
           provider).
  
     (B) Use the description that comes back with an error code in the XML      -   Implement queuing.
         protocol. Perhaps it should become an extra message field of  
         XmlException.  
  
     (B) Source documentation.      -   Make reference counted objects thread safe (Mutexing and atomic
           increments).
  
     (B) Put README in each directory.  -   Connectors
  
     (B) Handle UCS2 characters in XML (parsing and writing).      -   Work out basic concepts (write paper).
  
     (B) Check for overflow on the number of attributes in XML.      -   Package up pegasus in Install Shield application.
  
     (B) Handle PARAMETER.REFARRAY in XML.  
  
     (B) Add validNamespace() method and use it.  -   Install
  
     (B) Finish Pegasus-CGI interface:      -   Need install mechanism for Unix and Windows.
  
         Add GetMethod.cgi.  -   Interoperability
         Add propagated and class-origin columns.  
         Add flavor column to qualifiers.  
  
     ------------------------------------------------------------------------      -   Fix reported bugs.
  
     (C) Implement Strings that point to preallocated char* that will  -   Internationalization
         remain in scope?  
  
     (C) Suppress error message printed by ACE caused by constructing an      - Handle UCS2 characters in XML (parsing and writing).
         address from a non existent host.  
  
     (C) Ignore extraneous XML elements (loosely valid).  -   Repository:
  
     (C) Get rid of fullyQualified flag.      - Export to MOF.
  
     (C) Handling of hexadecimal integer values.  -   Miscellaneous
  
     (C) VALUE.REFERENCE within INSTANCENAME and KEYBINDING.      - Figure out how to handle CIM null values.
  
     (C) Resolve whether MOF is a requirement.      - Generalize iteration.
  
     (C) Handle case sensitivity of CIM identifiers.      - Figure out how inheritance of keys works.
  
     (C) Figure out how to handle CIM null values.      - Investiage weak assocations.
  
     (C) Make iteration scheme more general.      - Provide conversions between DateTime and time_t.
  
     (C) Develop XML repository importation mechanism.  -   Constraint hanlding
  
     (C) Move internal headers to ./internal directory      - Enforce constraint qualifiers.
  
     (C) Split up XxxRep objects from Xxx objects.      - Disallow resetting size of fixed length arrays.
  
     (C) Handle case insentive requirement on repository file names.  -   Optimization/Tuning
  
     (C) Devise a way to detect whether a class has instances.      -   Shrink object sizes.
  
     (C) Cleanup of execeptions.      -   Use lighter I/O system (than C++ streams).
  
     (C) Verify that fixed length arrays are properly handled.      -   Run Purify on all sources (port to Sun first).
  
     (C) Check for null string pointers in String class.      -   Optimize clear method on arrays (to not release memory).
  
     (C) Verify that instances are property keyed (during validation).  -   Porting
  
     (C) Thread safety.      -   Port to Solaris
  
     (C) Use UTF8 for strings.      -   Port to HPUX
  
     (C) Shrink object sizes.      -   Port to AIX
  
     (C) Use lighter I/O system (get rid of C++ streams).  -   Testing
  
     (C) Provide conversion between DateTime and time_t.      -   Run Purify on all sources (port to Sun first).
  
     (C) Purify source.      -   Run CIM/XML test suite.
  
     (C) Improve the representation of fixed arrays (is that pesky fixed-array  
         flag really necessary?)  


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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2