1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 *************************************************************************/
28 #include <CoreFoundation/CoreFoundation.h>
29 #include <CoreServices/CoreServices.h>
30 #include <Foundation/Foundation.h>
33 #import "OOoSpotlightImporter.h"
36 /* -----------------------------------------------------------------------------
37 Get metadata attributes from file
39 This function's job is to extract useful information your file format supports
40 and return it as a dictionary
41 ----------------------------------------------------------------------------- */
43 Boolean GetMetadataForFile(void* thisInterface,
44 CFMutableDictionaryRef attributes,
45 CFStringRef contentTypeUTI,
46 CFStringRef pathToFile)
48 /* Pull any available metadata from the file at the specified path */
49 /* Return the attribute keys and attribute values in the dict */
50 /* Return TRUE if successful, FALSE if there was no data provided */
51 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
53 OOoSpotlightImporter *importer = [OOoSpotlightImporter new];
55 Boolean importOK = NO;
57 importOK = [importer importDocument:(NSString*)pathToFile
58 contentType:(NSString*)contentTypeUTI
59 attributes:(NSMutableDictionary*)attributes];
61 @catch (NSException *exception) {
62 NSLog(@"main: Caught %@: %@", [exception name], [exception reason]);