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

  1 mike  1.3 Urgent
  2           ======
  3           
  4 mike  1.16     -   Fix problem with cimserver not running properly when run without
  5            	options.
  6            
  7                -   Put cimserver back in the makefile.
  8            
  9                -   Resolve whether the backslash should be permitted int namespaces.
 10            
 11                -   Work on developer's guidlines document.
 12            
 13            	    No STL (or other third party software).
 14            	    Indent by three.
 15            	    Braces on the next line.
 16            	    Always run regression tests before committing and do cvs -q update.
 17            
 18 mike  1.11     -   Add CIMOM handle to provider interface.
 19            
 20 mike  1.3      -	Fix case sensitivity problems in repository (just add an _Open method
 21            	that ignores the case of the file).
 22 mike  1.1  
 23 mike  1.5      -	Add newly implemented repository operations to protocol and to
 24            	dispatcher.
 25            
 26 karl  1.14     -	Change INVALID_CLASS exceptions to NOT_FOUND (they're wrong in
 27 mike  1.5  	Repository).
 28 mike  1.4  
 29 mike  1.7      -	Add tracing of output HTTP messages.
 30            
 31 mike  1.8      -   Need CIMInstance::removeMethod() and CIMInstance::removeProperty().
 32 karl  1.14     -   Add a exists namespace operation under the repository stuff.  Maybe we
 33                need more than this.
 34 mike  1.8  
 35 mike  1.1  Topical To-Do List
 36            ==================
 37            
 38 mike  1.15     - 	Sun uses string message-ids. Pegasus uses integer.
 39            	Sun uses 2000.5.12.... format. Changed Pegasus to
 40            	use string message-ids. DONE.
 41            
 42                -   Some clients send '\n\n' to terminate HTTP headers.
 43            	We were only accepted '\r\n\r\n'. DONE.
 44            
 45 mike  1.13     -	Provide way of printing out command line options help from cimserver.
 46            
 47 karl  1.14     - 	GetInstances() and GetClasses() need to use iterators on
 48 mike  1.12 	provider and repository end. Otherwise, all classes or instance
 49            	to be enumerated, must be sucked into memory.
 50 karl  1.14 
 51 mike  1.10     -   Template bloat reduction.
 52            
 53                -	Use YACC on Linux.
 54            
 55                - 	Need a tool to say which features are supported by a compiler.
 56            
 57 mike  1.9      -   Support unloading of dynamic libraries (presently only load() is
 58            	supported).
 59            
 60 mike  1.1  -   Instances:
 61            
 62 mike  1.5      -	Implement CIMRepository::getProperty()
 63 mike  1.1  
 64 mike  1.5      -	Implement CIMRepository::setProperty()
 65 mike  1.1  
 66 mike  1.5      -	Implement CIMRepository::deleteInstance()
 67 mike  1.1  
 68 mike  1.5      -	Implement CIMRepository::modifyInstance()
 69 mike  1.1  
 70 mike  1.5      -	Implement CIMRepository::enumerateInstances()
 71 mike  1.1  
 72 mike  1.5      -	Implement CIMRepository::enumerateInstanceNames()
 73 mike  1.1  
 74 mike  1.5      -	Handle inheritance in all instance operations.
 75 mike  1.1  
 76                -	Double check that all these operations work across protocol.
 77            
 78 mike  1.5      -	Check that they have keys during validation.
 79 mike  1.1  
 80            -   Associations:
 81            
 82 mike  1.5      -	Implement CIMRepository::referencesOf()
 83 mike  1.1  
 84 mike  1.5      -	Implement CIMRepository::associatorsOf()
 85 mike  1.1  
 86                -	Implement protocol stubs for these operations.
 87            
 88            -   Exceptions:
 89            
 90 mike  1.5      -	Force __FILE__ and __LINE__ argument on every usage of CIMException.
 91 mike  1.2  
 92 mike  1.1      -	Clean up and consolidate exception classes.
 93            
 94 mike  1.5      -	Propagate underlying error messages across the CIM protocol.
 95 mike  1.1  
 96            -   References:
 97            
 98                -	Validate arguments to CIMReference compound constructor and modifiers.
 99            	(namespaces, hosts, classnames, and keybindings)
100            
101 mike  1.5      -	Be sure that escape sequences are handled inside of object names. For
102 mike  1.1  	example:
103            
104            	    X.key1="Hello \"You\""
105            
106            -   Protocol:
107            
108 mike  1.5      -	Improve protocol tracing to show messages in both directions.
109 mike  1.1  
110 mike  1.5      -	The TCPChannel::writeN() method blocks when the client and server
111 mike  1.1  	are in the same process. That is because the client cannot read
112            	anything as long as writeN() is blocked on a synchronous write.
113            
114 mike  1.5      -	Figure out how to handle getProperty() return type.
115 mike  1.1  
116 mike  1.5      -	Provide ACE Channel implementation (for porting purposes)?
117 mike  1.1  
118 mike  1.5      -	Handle PARAMETER.REFARRAY in Procotol?
119 mike  1.1  
120 mike  1.5      -	Ignore extraneous XML elements (loosely valid).
121 mike  1.1  
122            -   Porting:
123            
124                -	Replace "std::something" with "STD(something)"
125            
126 mike  1.5      -	Replace "using namespace std" with "USING_NAMESPACE_PEGASUS"
127 mike  1.1  
128            -   Aesthetics/Consistency/Usability:
129            
130 mike  1.5      -	Change getLength() and getSize() to just size(): "Brevity is the soul
131 karl  1.14 	of genius and of Lingerie".
132 mike  1.1  
133 mike  1.5      -	Add methods to get objects by their names, in addition to index. For
134 mike  1.1  	example:
135            
136            	    CIMProperty CIMClass::getProperty(const String& name);
137            
138 mike  1.5      -	Perform walkthrough to expose consistency problems.
139 mike  1.1  
140 mike  1.5      -	Distinguish between private and public classes (otherwise, users may
141 mike  1.1  	come to depend on classes with unstable interfaces).
142            
143            -   Documentation:
144            
145 mike  1.5      -	Suggest newlines after methods.
146 mike  1.1  
147 mike  1.5      -	Suggest use of "/** ... */" instead of "///"
148 mike  1.1  
149                -	Refine header file documentation.
150            
151                -	Write Pegasus Architecture Paper.
152            
153 mike  1.5      -	Integrate DOC++ with make system (put all docs in doc tree):
154 mike  1.1  
155            -   Namespaces:
156            
157 mike  1.5      -	Implement create and destroy namespace (according to the standard).
158 mike  1.1  
159            -   Providers
160            
161 mike  1.5      -	Add CIM-Server handles to provider interface.
162 mike  1.1  
163 karl  1.14     -	Implement MOF provider registration scheme (according to the
164                standard).
165 mike  1.1  
166            -   WBEM Query Language
167            
168                -	Find someone to work on standard.
169            
170 mike  1.5      -	Implement leve-1 parser.
171 mike  1.1  
172            -   MOF compiler:
173            
174 mike  1.5      -	Work with Bob to identify work items.
175 mike  1.1  
176            -   Threading
177            
178 mike  1.5      -	Write thread queuing document (input and output thread queue per
179 mike  1.1  	provider).
180            
181 mike  1.5      -	Implement queuing.
182 mike  1.1  
183 mike  1.5      -	Make reference counted objects thread safe (Mutexing and atomic
184 mike  1.1  	increments).
185            
186            -   Connectors
187            
188 mike  1.5      -	Work out basic concepts (write paper).
189 mike  1.1  
190                -	Package up pegasus in Install Shield application.
191            
192            
193            -   Install
194            
195 mike  1.5      -	Need install mechanism for Unix and Windows.
196 mike  1.1  
197            -   Interoperability
198            
199 mike  1.5      -	Fix reported bugs.
200 mike  1.1  
201            -   Internationalization
202            
203 mike  1.5      -	Handle UCS2 characters in XML (parsing and writing).
204 mike  1.1  
205            -   Repository:
206            
207 mike  1.5      -	Export to MOF.
208 mike  1.1  
209            -   Miscellaneous
210            
211 mike  1.6      -   Change CompareNoCase() to String::compareNoCase().
212            
213 mike  1.5      -	Place configuration startup parameters in Repository (e.g., port).
214            
215 karl  1.14     -	Integrate logging
216 mike  1.1  
217 mike  1.5      -	Figure out how to handle CIM null values.
218 mike  1.1  
219 mike  1.5      -	Generalize iteration.
220 mike  1.1  
221 mike  1.5      -	Figure out how inheritance of keys works.
222 mike  1.1  
223 mike  1.5      -	Investiage weak assocations.
224 mike  1.1  
225 mike  1.5      -	Provide conversions between DateTime and time_t.
226 karl  1.14 
227 mike  1.1  -   Constraint hanlding
228            
229 mike  1.5      -	Enforce constraint qualifiers.
230 mike  1.1  
231 mike  1.5      -	Disallow resetting size of fixed length arrays.
232 mike  1.1  
233            -   Optimization/Tuning
234            
235 mike  1.5      -	Shrink object sizes.
236 mike  1.1  
237 mike  1.5      -	Use lighter I/O system (than C++ streams).
238 mike  1.1  
239 mike  1.5      -	Run Purify on all sources (port to Sun first).
240 mike  1.1  
241 mike  1.5      -	Optimize clear method on arrays (to not release memory).
242 mike  1.1  
243            -   Porting
244            
245 mike  1.5      -	Port to Solaris
246 mike  1.1  
247 mike  1.5      -	Port to HPUX
248 mike  1.1  
249 mike  1.5      -	Port to AIX
250 mike  1.1  
251            -   Testing
252            
253 mike  1.5      -	Test case insensitivity of class names and qualifier names.
254            
255                -	Run Purify on all sources (port to Sun first).
256 mike  1.1  
257 mike  1.5      -	Run CIM/XML test suite.
258 mike  1.1  
259            -   Server
260            
261 mike  1.5      -	Use Service class in cimserver
262 mike  1.1  
263 mike  1.5      -	Implement Service class on Unix (daemonization from Comer book).
264 karl  1.14 

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2