(file) Return to todo.txt CVS log (file) (dir) Up to [Pegasus] / pegasus / doc

  1 mike  1.1 
  2           Topical To-Do List
  3           ==================
  4           
  5           -   Instances:
  6           
  7               -   Implement CIMRepository::getProperty()
  8           
  9               -   Implement CIMRepository::setProperty()
 10           
 11               -   Implement CIMRepository::deleteInstance()
 12           
 13               -   Implement CIMRepository::modifyInstance()
 14           
 15               -   Implement CIMRepository::enumerateInstances()
 16           
 17               -   Implement CIMRepository::enumerateInstanceNames()
 18           
 19               -   Handle inheritance in all instance operations.
 20           
 21               -	Double check that all these operations work across protocol.
 22 mike  1.1 
 23               -   Check that they have keys during validation.
 24           
 25           -   Associations:
 26           
 27               -   Implement CIMRepository::referencesOf()
 28           
 29               -   Implement CIMRepository::associatorsOf()
 30           
 31               -	Implement protocol stubs for these operations.
 32           
 33           -   Exceptions:
 34           
 35               -	Clean up and consolidate exception classes.
 36           
 37               - 	Propagate underlying error messages across the CIM protocol.
 38           
 39           -   References:
 40           
 41               -	Validate arguments to CIMReference compound constructor and modifiers.
 42           	(namespaces, hosts, classnames, and keybindings)
 43 mike  1.1 
 44               -   Be sure that escape sequences are handled inside of object names. For
 45           	example:
 46           
 47           	    X.key1="Hello \"You\""
 48           
 49           -   Protocol:
 50           
 51               -   Improve protocol tracing to show messages in both directions.
 52           
 53               - 	The TCPChannel::writeN() method blocks when the client and server
 54           	are in the same process. That is because the client cannot read
 55           	anything as long as writeN() is blocked on a synchronous write.
 56           
 57               - 	Figure out how to handle getProperty() return type.
 58           
 59               -   Provide ACE Channel implementation (for porting purposes)?
 60           
 61               -   Handle PARAMETER.REFARRAY in Procotol?
 62           
 63               -   Ignore extraneous XML elements (loosely valid).
 64 mike  1.1 
 65           -   Porting:
 66           
 67               -	Replace "std::something" with "STD(something)"
 68           
 69               -   Replace "using namespace std" with "USING_NAMESPACE_PEGASUS"
 70           
 71           -   Aesthetics/Consistency/Usability:
 72           
 73               -  	Change getLength() and getSize() to just size(): "Brevity is the soul
 74           	of genius and of Lingerie". 
 75           
 76               -  	Add methods to get objects by their names, in addition to index. For
 77           	example:
 78           
 79           	    CIMProperty CIMClass::getProperty(const String& name);
 80           
 81               -   Perform walkthrough to expose consistency problems.
 82           
 83               -   Distinguish between private and public classes (otherwise, users may
 84           	come to depend on classes with unstable interfaces).
 85 mike  1.1 
 86           -   Documentation:
 87           
 88               -   Suggest newlines after methods.
 89           
 90               -   Suggest use of "/** ... */" instead of "///"
 91           
 92               -	Refine header file documentation.
 93           
 94               -	Write Pegasus Architecture Paper.
 95           
 96               -   Integrate DOC++ with make system (put all docs in doc tree):
 97           
 98           -   Namespaces:
 99           
100               -   Implement create and destroy namespace (according to the standard).
101           
102           -   Providers
103           
104               -   Add CIM-Server handles to provider interface.
105           
106 mike  1.1     -   Implement MOF provider registration scheme (according to the standard).
107           
108           -   WBEM Query Language
109           
110               -	Find someone to work on standard.
111           
112               -   Implement leve-1 parser.
113           
114           -   MOF compiler:
115           
116               -   Work with Bob to identify work items.
117           
118           -   Threading
119           
120               -   Write thread queuing document (input and output thread queue per
121           	provider).
122           
123               -   Implement queuing.
124           
125               -   Make reference counted objects thread safe (Mutexing and atomic
126           	increments).
127 mike  1.1 
128           -   Connectors
129           
130               -   Work out basic concepts (write paper).
131           
132               -	Package up pegasus in Install Shield application.
133           
134           
135           -   Install
136           
137               -   Need install mechanism for Unix and Windows.
138           
139           -   Interoperability
140           
141               -   Fix reported bugs.
142           
143           -   Internationalization
144           
145               - Handle UCS2 characters in XML (parsing and writing).
146           
147           -   Repository:
148 mike  1.1 
149               - Export to MOF.
150           
151           -   Miscellaneous
152           
153               - Figure out how to handle CIM null values.
154           
155               - Generalize iteration.
156           
157               - Figure out how inheritance of keys works.
158           
159               - Investiage weak assocations.
160           
161               - Provide conversions between DateTime and time_t.
162           
163           -   Constraint hanlding
164           
165               - Enforce constraint qualifiers.
166           
167               - Disallow resetting size of fixed length arrays.
168           
169 mike  1.1 -   Optimization/Tuning
170           
171               -   Shrink object sizes.
172           
173               -   Use lighter I/O system (than C++ streams).
174           
175               -   Run Purify on all sources (port to Sun first).
176           
177               -   Optimize clear method on arrays (to not release memory).
178           
179           -   Porting
180           
181               -   Port to Solaris
182           
183               -   Port to HPUX
184           
185               -   Port to AIX
186           
187           -   Testing
188           
189               -   Run Purify on all sources (port to Sun first).
190 mike  1.1 
191               -   Run CIM/XML test suite.
192           
193           -   Server
194           
195               -   Use Service class in cimserver
196           
197               -   Implement Service class on Unix (daemonization from Comer book).
198           
199           Short-term Items
200           ================
201           
202           -   Make HashTable take Equal template function argument.
203           
204           -   Make InheritanceTree case-insensitive.

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2