|
13 | 13 |
|
14 | 14 | namespace Microsoft.Android.Build.Tasks |
15 | 15 | { |
16 | | - [Flags] |
17 | | - public enum RegisterTaskObjectKeyFlags { |
18 | | - None = 0, |
19 | | - IncludeProjectFile = 1 << 0, |
20 | | - } |
21 | | - |
22 | 16 | public static class MSBuildExtensions |
23 | 17 | { |
24 | 18 | public static void LogDebugMessage (this TaskLoggingHelper log, string message, params object[] messageArgs) |
@@ -259,80 +253,33 @@ public static void SetDestinationSubPath (this ITaskItem assembly) |
259 | 253 | /// IBuildEngine4.RegisterTaskObject, but adds the current assembly path into the key |
260 | 254 | /// </summary> |
261 | 255 | public static void RegisterTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, object value, RegisteredTaskObjectLifetime lifetime, bool allowEarlyCollection = false) => |
262 | | - RegisterTaskObjectAssemblyLocal (engine, key, value, lifetime, allowEarlyCollection: false, flags: RegisterTaskObjectKeyFlags.IncludeProjectFile); |
263 | | - |
264 | | - /// <summary> |
265 | | - /// IBuildEngine4.RegisterTaskObject, but adds the current assembly path into the key |
266 | | - /// </summary> |
267 | | - public static void RegisterTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, object value, RegisteredTaskObjectLifetime lifetime, RegisterTaskObjectKeyFlags flags) => |
268 | | - engine.RegisterTaskObject (engine.GetKey (AssemblyLocation, key, flags), value, lifetime, allowEarlyCollection: false); |
269 | | - |
270 | | - /// <summary> |
271 | | - /// IBuildEngine4.RegisterTaskObject, but adds the current assembly path into the key |
272 | | - /// </summary> |
273 | | - public static void RegisterTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, object value, RegisteredTaskObjectLifetime lifetime, bool allowEarlyCollection, RegisterTaskObjectKeyFlags flags) => |
274 | | - engine.RegisterTaskObject (engine.GetKey (AssemblyLocation, key, flags), value, lifetime, allowEarlyCollection); |
| 256 | + engine.RegisterTaskObject ((AssemblyLocation, key), value, lifetime, allowEarlyCollection); |
275 | 257 |
|
276 | 258 | /// <summary> |
277 | 259 | /// IBuildEngine4.GetRegisteredTaskObject, but adds the current assembly path into the key |
278 | 260 | /// </summary> |
279 | 261 | public static object GetRegisteredTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime) => |
280 | | - GetRegisteredTaskObjectAssemblyLocal (engine, key, lifetime, flags: RegisterTaskObjectKeyFlags.IncludeProjectFile); |
281 | | - |
282 | | - /// <summary> |
283 | | - /// IBuildEngine4.GetRegisteredTaskObject, but adds the current assembly path into the key |
284 | | - /// </summary> |
285 | | - public static object GetRegisteredTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime, RegisterTaskObjectKeyFlags flags) => |
286 | | - engine.GetRegisteredTaskObject (engine.GetKey (AssemblyLocation, key, flags), lifetime); |
287 | | - |
| 262 | + engine.GetRegisteredTaskObject ((AssemblyLocation, key), lifetime); |
288 | 263 |
|
289 | 264 | /// <summary> |
290 | 265 | /// Generic version of IBuildEngine4.GetRegisteredTaskObject, but adds the current assembly path into the key |
291 | 266 | /// </summary> |
292 | 267 | public static T GetRegisteredTaskObjectAssemblyLocal<T> (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime) |
293 | | - where T : class => GetRegisteredTaskObjectAssemblyLocal<T> (engine, key, lifetime, flags: RegisterTaskObjectKeyFlags.IncludeProjectFile); |
294 | | - |
295 | | - /// <summary> |
296 | | - /// Generic version of IBuildEngine4.GetRegisteredTaskObject, but adds the current assembly path into the key |
297 | | - /// </summary> |
298 | | - public static T GetRegisteredTaskObjectAssemblyLocal<T> (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime, RegisterTaskObjectKeyFlags flags) |
299 | 268 | where T : class => |
300 | | - engine.GetRegisteredTaskObject (engine.GetKey (AssemblyLocation, key, flags), lifetime) as T; |
| 269 | + engine.GetRegisteredTaskObject ((AssemblyLocation, key), lifetime) as T; |
301 | 270 |
|
302 | | - /// <summary> |
303 | | - /// IBuildEngine4.UnregisterTaskObject, but adds the current assembly path into the key |
304 | | - /// </summary> |
305 | | - public static object UnregisterTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime) => |
306 | | - UnregisterTaskObjectAssemblyLocal (engine, key, lifetime, flags: RegisterTaskObjectKeyFlags.IncludeProjectFile); |
307 | 271 |
|
308 | 272 | /// <summary> |
309 | 273 | /// IBuildEngine4.UnregisterTaskObject, but adds the current assembly path into the key |
310 | 274 | /// </summary> |
311 | | - public static object UnregisterTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime, RegisterTaskObjectKeyFlags flags) => |
312 | | - engine.UnregisterTaskObject (engine.GetKey (AssemblyLocation, key, flags), lifetime); |
| 275 | + public static object UnregisterTaskObjectAssemblyLocal (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime) => |
| 276 | + engine.UnregisterTaskObject ((AssemblyLocation, key), lifetime); |
313 | 277 |
|
314 | 278 | /// <summary> |
315 | 279 | /// Generic version of IBuildEngine4.UnregisterTaskObject, but adds the current assembly path into the key |
316 | 280 | /// </summary> |
317 | 281 | public static T UnregisterTaskObjectAssemblyLocal<T> (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime) |
318 | | - where T : class => UnregisterTaskObjectAssemblyLocal<T> (engine, key, lifetime, flags: RegisterTaskObjectKeyFlags.IncludeProjectFile); |
319 | | - |
320 | | - /// <summary> |
321 | | - /// Generic version of IBuildEngine4.UnregisterTaskObject, but adds the current assembly path into the key |
322 | | - /// </summary> |
323 | | - public static T UnregisterTaskObjectAssemblyLocal<T> (this IBuildEngine4 engine, object key, RegisteredTaskObjectLifetime lifetime, RegisterTaskObjectKeyFlags flags) |
324 | 282 | where T : class => |
325 | | - engine.UnregisterTaskObject (engine.GetKey (AssemblyLocation, key, flags), lifetime) as T; |
326 | | - |
327 | | - /// <summary> |
328 | | - /// Method to calculate the key for the RegisterTaskObject. This is based on the |
329 | | - /// RegisterTaskObjectKeyFlags which are passed. |
330 | | - /// </summary> |
331 | | - static object GetKey (this IBuildEngine4 engine, string location, object key, RegisterTaskObjectKeyFlags flags) |
332 | | - { |
333 | | - return ((flags & RegisterTaskObjectKeyFlags.IncludeProjectFile) != 0) |
334 | | - ? (location, key, engine.ProjectFileOfTaskNode) |
335 | | - : (location, key, string.Empty); |
336 | | - } |
| 283 | + engine.UnregisterTaskObject ((AssemblyLocation, key), lifetime) as T; |
337 | 284 | } |
338 | 285 | } |
0 commit comments