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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2