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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2