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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2