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