From a72981b4f4156d7ae5f184e4a7155b6817f0fda3 Mon Sep 17 00:00:00 2001 From: dmaclach Date: Tue, 13 Nov 2018 12:21:51 -0800 Subject: Remove Unused (and deprecated) GTMNSFileManager+Carbon (#197) These were functions that dealt with Aliases. --- Foundation/GTMNSFileManager+Carbon.h | 73 ------------------- Foundation/GTMNSFileManager+Carbon.m | 117 ------------------------------- Foundation/GTMNSFileManager+CarbonTest.m | 73 ------------------- 3 files changed, 263 deletions(-) delete mode 100644 Foundation/GTMNSFileManager+Carbon.h delete mode 100644 Foundation/GTMNSFileManager+Carbon.m delete mode 100644 Foundation/GTMNSFileManager+CarbonTest.m (limited to 'Foundation') diff --git a/Foundation/GTMNSFileManager+Carbon.h b/Foundation/GTMNSFileManager+Carbon.h deleted file mode 100644 index 02bff65..0000000 --- a/Foundation/GTMNSFileManager+Carbon.h +++ /dev/null @@ -1,73 +0,0 @@ -// -// GTMNSFileManager+Carbon.h -// -// Copyright 2008 Google Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); you may not -// use this file except in compliance with the License. You may obtain a copy -// of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -// License for the specific language governing permissions and limitations under -// the License. -// - -#import - - -// A few useful methods for dealing with paths and carbon structures -@interface NSFileManager (GTMFileManagerCarbonAdditions) - -// Converts a path to an alias -// Args: -// path - the path to convert -// -// Returns: -// An alias wrapped up in an autoreleased NSData. Nil on failure. -// -- (NSData *)gtm_aliasDataForPath:(NSString *)path; - -// Converts an alias to a path -// Args: -// alias - an alias wrapped up in an NSData -// -// Returns: -// The path. Nil on failure. -// -- (NSString *)gtm_pathFromAliasData:(NSData *)alias; - -// Converts an alias to a path without optional triggering of UI. -// Args: -// alias - an alias wrapped up in an NSData -// resolve - whether to try to resolve the alias, or simply read path data -// withUI - whether to show UI when trying to resolve -// -// Returns: -// The path. Nil on failure. -// -- (NSString *)gtm_pathFromAliasData:(NSData *)alias - resolve:(BOOL)resolve - withUI:(BOOL)withUI; - -// Converts a path to an FSRef * -// Args: -// path - the path to convert -// -// Returns: -// An autoreleased FSRef *. Nil on failure. -// -- (FSRef *)gtm_FSRefForPath:(NSString *)path; - -// Converts an FSRef to a path -// Args: -// fsRef - the FSRef to convert -// -// Returns: -// The path. Nil on failure. -// -- (NSString *)gtm_pathFromFSRef:(FSRef *)fsRef; -@end diff --git a/Foundation/GTMNSFileManager+Carbon.m b/Foundation/GTMNSFileManager+Carbon.m deleted file mode 100644 index fc990ae..0000000 --- a/Foundation/GTMNSFileManager+Carbon.m +++ /dev/null @@ -1,117 +0,0 @@ -// -// GTMNSFileManager+Carbon.m -// -// Copyright 2008 Google Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); you may not -// use this file except in compliance with the License. You may obtain a copy -// of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -// License for the specific language governing permissions and limitations under -// the License. -// - -#import "GTMNSFileManager+Carbon.h" -#import -#import -#import "GTMDefines.h" - -@implementation NSFileManager (GTMFileManagerCarbonAdditions) - -- (NSData *)gtm_aliasDataForPath:(NSString *)path { - NSData *data = nil; - FSRef ref; - AliasHandle alias = NULL; - - __Require_Quiet([path length], CantUseParams); - __Require_noErr(FSPathMakeRef((UInt8 *)[path fileSystemRepresentation], - &ref, NULL), CantMakeRef); - __Require_noErr(FSNewAlias(NULL, &ref, &alias), CantMakeAlias); - - Size length = GetAliasSize(alias); - data = [NSData dataWithBytes:*alias length:length]; - - DisposeHandle((Handle)alias); - -CantMakeAlias: -CantMakeRef: -CantUseParams: - return data; -} - -- (NSString *)gtm_pathFromAliasData:(NSData *)data { - return [self gtm_pathFromAliasData:data resolve:YES withUI:YES]; -} - -- (NSString *)gtm_pathFromAliasData:(NSData *)data - resolve:(BOOL)resolve - withUI:(BOOL)withUI { - NSString *path = nil; - __Require_Quiet(data, CantUseParams); - - AliasHandle alias; - const void *bytes = [data bytes]; - NSUInteger length = [data length]; - __Require_noErr(PtrToHand(bytes, (Handle *)&alias, length), CantMakeHandle); - - FSRef ref; - Boolean wasChanged; - // we don't use a require here because it is quite legitimate for an alias - // resolve to fail. - - if (resolve) { - OSStatus err - = FSResolveAliasWithMountFlags(NULL, alias, &ref, &wasChanged, - withUI ? kResolveAliasFileNoUI : 0); - if (err == noErr) { - path = [self gtm_pathFromFSRef:&ref]; - } - } else { - OSStatus err - = FSCopyAliasInfo(alias, NULL, NULL, (CFStringRef *)(&path), NULL, NULL); - if (err != noErr) path = nil; - GTMCFAutorelease(path); - } - DisposeHandle((Handle)alias); -CantMakeHandle: -CantUseParams: - return path; -} - -- (FSRef *)gtm_FSRefForPath:(NSString *)path { - FSRef* fsRef = NULL; - __Require_Quiet([path length], CantUseParams); - NSMutableData *fsRefData = [NSMutableData dataWithLength:sizeof(FSRef)]; - __Require(fsRefData, CantAllocateFSRef); - fsRef = (FSRef*)[fsRefData mutableBytes]; - Boolean isDir = FALSE; - const UInt8 *filePath = (const UInt8 *)[path fileSystemRepresentation]; - __Require_noErr_Action(FSPathMakeRef(filePath, fsRef, &isDir), - CantMakeRef, fsRef = NULL); -CantMakeRef: -CantAllocateFSRef: -CantUseParams: - return fsRef; -} - -- (NSString *)gtm_pathFromFSRef:(FSRef *)fsRef { - NSString *nsPath = nil; - __Require_Quiet(fsRef, CantUseParams); - - char path[MAXPATHLEN]; - __Require_noErr(FSRefMakePath(fsRef, (UInt8 *)path, MAXPATHLEN), - CantMakePath); - nsPath = [self stringWithFileSystemRepresentation:path length:strlen(path)]; - nsPath = [nsPath stringByStandardizingPath]; - -CantMakePath: -CantUseParams: - return nsPath; -} - -@end diff --git a/Foundation/GTMNSFileManager+CarbonTest.m b/Foundation/GTMNSFileManager+CarbonTest.m deleted file mode 100644 index f42ece4..0000000 --- a/Foundation/GTMNSFileManager+CarbonTest.m +++ /dev/null @@ -1,73 +0,0 @@ -// -// GTMNSFileManager+CarbonTest.m -// -// Copyright 2006-2008 Google Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); you may not -// use this file except in compliance with the License. You may obtain a copy -// of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -// License for the specific language governing permissions and limitations under -// the License. -// - -#import "GTMSenTestCase.h" -#import "GTMNSFileManager+Carbon.h" -#import - -@interface GTMNSFileManager_CarbonTest : GTMTestCase -@end - -@implementation GTMNSFileManager_CarbonTest - -- (void)testAliasPathFSRefConversion { - NSString *path = NSHomeDirectory(); - XCTAssertNotNil(path); - NSFileManager *fileManager = [NSFileManager defaultManager]; - FSRef *fsRef = [fileManager gtm_FSRefForPath:path]; - XCTAssertNotNULL(fsRef); - AliasHandle alias; - XCTAssertNoErr(FSNewAlias(nil, fsRef, &alias)); - XCTAssertNotNULL(alias); - NSData *aliasData = [NSData dataWithBytes:*alias - length:GetAliasSize(alias)]; - XCTAssertNotNil(aliasData); - NSString *path2 = [fileManager gtm_pathFromAliasData:aliasData]; - XCTAssertEqualObjects(path, path2); - - path2 = [fileManager gtm_pathFromAliasData:aliasData - resolve:YES - withUI:NO]; - XCTAssertEqualObjects(path, path2); - - path2 = [fileManager gtm_pathFromAliasData:aliasData - resolve:NO - withUI:NO]; - XCTAssertEqualObjects(path, path2); - - NSData *aliasData2 = [fileManager gtm_aliasDataForPath:path2]; - XCTAssertNotNil(aliasData2); - NSString *path3 = [fileManager gtm_pathFromAliasData:aliasData2]; - XCTAssertEqualObjects(path2, path3); - NSString *path4 = [fileManager gtm_pathFromFSRef:fsRef]; - XCTAssertEqualObjects(path, path4); - - // Failure cases - XCTAssertNULL([fileManager gtm_FSRefForPath:@"/ptah/taht/dosent/esixt/"]); - - XCTAssertNULL([fileManager gtm_FSRefForPath:@""]); - XCTAssertNULL([fileManager gtm_FSRefForPath:nil]); - XCTAssertNil([fileManager gtm_pathFromFSRef:nil]); - XCTAssertNil([fileManager gtm_pathFromAliasData:nil]); - XCTAssertNil([fileManager gtm_pathFromAliasData:[NSData data]]); - - XCTAssertNil([fileManager gtm_aliasDataForPath:@"/ptah/taht/dosent/esixt/"]); - XCTAssertNil([fileManager gtm_aliasDataForPath:@""]); - XCTAssertNil([fileManager gtm_aliasDataForPath:nil]); -} -@end -- cgit v1.2.3