IP Library Granted Patent US 12,568,151
Granted Patent B2
US 12,568,151 · App. 18/645,210 · Granted Mar 3, 2026

Automatic discovery and registration of service applications for files introduced to a user interface

Inventors: Adam Campbell (New York, NY); Ashwin Ramaswamy (New York, NY); Juan Tamayo (San Francisco, CA); Lee Avital (New York, NY); Taylor Morgan (New York, NY); Thomas Hasner (New Brunswick, NJ)
Assignee: Palantir Technologies Inc.
H04L67/51G06F9/44505G06F16/116G06F16/13G06F16/148G06F16/156G06F16/1734G06F16/951H04L67/535G06F3/048G06F16/16G06F16/168
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,568,151
App. No.
18/645,210
Granted
Mar 3, 2026
Kind
B2
Abstract

A method comprises listening for changes to a plurality of configuration files respectively of a plurality of service applications, each configuration file indicating a resource item type and one or more user actions, the listening comprising determining whether a configuration file is updated, disabled, or enabled by a corresponding service application; detecting a change to a specific configuration file of a specific service application; updating, in response to the change to the specific configuration file, mapping data in a central catalogue that associates a specific resource item type and one or more specific user actions with the specific service application; detecting a change to a particular resource item; determining that the particular resource item has a first resource item type that matches the specific resource item type; transmitting the particular resource item to the specific service application; storing metadata information regarding the particular resource item in the central catalogue.

Claims (47)

1 . A method of updating mapping data for routing resource items to service applications in a distributed system, comprising:

listening for changes across a network to a plurality of configuration files physically coupled respectively to a plurality of service applications residing in distributed locations,

each configuration file of the plurality of configuration files indicating a resource item type and one or more user actions for a corresponding service application,

the listening comprising determining whether a configuration file of the plurality of configuration files is created, modified, deleted, disabled, or enabled by a corresponding service application;

detecting a change to a specific configuration file of a specific service application based on the listening;

updating, in response to the change to the specific configuration file, mapping data in a central catalogue that indicates which service applications can process a resource item type, including an association of a specific resource item type and one or more specific user actions with the specific service application;

detecting a change to a particular resource item;

determining, in response to the change to the particular resource item, that the particular resource item has a first resource item type that matches the specific resource item type associated with the specific service application based on the mapping data;

transmitting the particular resource item to the specific service application;

storing metadata information regarding the particular resource item transmitted to the specific service application in the central catalogue,

wherein the method is performed using one or more processors.

2 . The method of claim 1 , the listening comprising receiving a notification of the change to the specific configuration file from the specific service application.

3 . The method of claim 2 , the notification indicating that the specific service application comes online.

4 . The method of claim 2 , specific the notification including a portion of the specific configuration file with the change.

5 . The method of claim 1 , the listening comprising polling a file path or directory associated with the specific service application.

6 . The method of claim 1 , the listening comprising monitoring the specific service application for changes to the specific configuration file.

7 . The method of claim 1 , the specific configuration file indicating one or more resource item types that can be processed by the specific service application and for each resource item type one or more user actions that can be used to process the resource item type by the specific service application.

8 . The method of claim 1 , each configuration file further including a priority for each of the one or more user actions.

9 . The method of claim 1 , further comprising:

detecting a change to a certain resource item;

determining, in response to the change to the certain resource item, that the certain resource item has the first resource item type that matches the resource item type associated with the specific service application based on the mapping data;

transmitting a notification of the certain resource item to the specific service application.

10 . The method of claim 1 , the metadata information including a unique identifier for the particular resource item, a unique identifier for the specific service application that received the particular resource item, or a relative path or location of the particular resource item at the specific service application.

11 . A system for updating mapping data for routing resource items to service applications in a distributed system, comprising:

a memory;

one or more processors coupled to the memory and configured to perform:

listening for changes across a network to a plurality of configuration files physically coupled respectively to a plurality of service applications residing in distributed locations

each configuration file of the plurality of configuration files indicating a resource item type and one or more user actions for a corresponding service application,

the listening comprising determining whether a configuration file of the plurality of configuration files is created, modified, deleted, disabled, or enabled by a corresponding service application;

detecting a change to a specific configuration file of a specific service application based on the listening;

updating, in response to the change to the specific configuration file, mapping data in a central catalogue that indicates which service applications can process a resource item type, including an association of a specific resource item type and one or more specific user actions with the specific service application;

detecting a change to a particular resource item;

determining, in response to the change to the particular resource item, that the particular resource item has a first resource item type that matches the specific resource item type associated with the specific service application based on the mapping data;

transmitting the particular resource item to the specific service application;

storing metadata information regarding the particular resource item transmitted to the specific service application in the central catalogue.

12 . The system of claim 11 , the listening comprising receiving a notification of the change to the specific configuration file from the specific service application.

13 . The system of claim 12 , the notification indicating that the specific service application comes online.

14 . The system of claim 12 , specific the notification including a portion of the specific configuration file with the change.

15 . The system of claim 11 , the listening comprising polling a file path or directory associated with the specific service application.

16 . The system of claim 11 , the listening comprising monitoring the specific service application for changes to the specific configuration file.

17 . The system of claim 11 , the specific configuration file indicating one or more resource item types that can be processed by the specific service application and for each resource item type one or more user actions that can be used to process the resource item type by the specific service application.

18 . The system of claim 11 , each configuration file further including a priority for each of the one or more user actions.

19 . The system of claim 11 , the one or more processors further configured to perform:

detecting a change to a certain resource item;

determining, in response to the change to the certain resource item, that the certain resource item has the first resource item type that matches the resource item type associated with the specific service application based on the mapping data;

transmitting a notification of the certain resource item to the specific service application.

20 . The system of claim 11 , the metadata information including a unique identifier for the particular resource item, a unique identifier for the specific service application that received the particular resource item, or a relative path or location of the particular resource item at the specific service application.

Continuity (5)
Continuation 17328128 · May 24, 2021
Continuation 15983482 · May 18, 2018
Continuation 15403904 · Jan 11, 2017
Provisional Application 62412155 · Oct 24, 2016
Related Publication 20240275856A1 · Aug 15, 2024
References Cited (46)
US 5457795A · Willman · 1995 [cited by examiner]
US 6047312A · Brooks · 2000 [cited by examiner]
US 6449617B1 · Quinn · 2002 [cited by examiner]
US 6810410B1 · Durham · 2004 [cited by examiner]
US 7194557B1 · Peacock · 2007 [cited by examiner]
US 7409405B1 · Masinter · 2008 [cited by examiner]
US 8387047B1 · Mazin · 2013 [cited by examiner]
US 10620967B2 · Rose · 2020 [cited by examiner]
US 20020178271A1 · Graham · 2002 [cited by examiner]
US 20030074393A1 · Peart · 2003 [cited by examiner]
US 20040155901A1 · McKee · 2004 [cited by examiner]
US 20040193606A1 · Arai · 2004 [cited by examiner]
US 20050203917A1 · Freeberg · 2005 [cited by examiner]
US 20060070029A1 · Laborczfalvi · 2006 [cited by examiner]
US 20060101053A1 · Proctor · 2006 [cited by examiner]
US 20060235871A1 · Trainor · 2006 [cited by examiner]
US 20070240098A1 · Averett · 2007 [cited by examiner]
US 20080120439A1 · Kwan · 2008 [cited by examiner]
US 20090044146A1 · Patel · 2009 [cited by examiner]
US 20090235200A1 · Deutsch · 2009 [cited by examiner]
US 20090248696A1 · Rowles · 2009 [cited by examiner]
US 20100223306A1 · Liu · 2010 [cited by examiner]
US 20110251992A1 · Bethlehem · 2011 [cited by examiner]
US 20130080507A1 · Ruhlen et al. · 2013 [cited by applicant]
US 20130104044A1 · Gujarathi · 2013 [cited by examiner]
US 20130212486A1 · Joshi · 2013 [cited by examiner]
US 20130275398A1 · Dorman et al. · 2013 [cited by applicant]
US 20130282755A1 · Procopio · 2013 [cited by examiner]
US 20140101310A1 · Savage · 2014 [cited by examiner]
US 20140164649A1 · Sougen · 2014 [cited by examiner]
US 20140229839A1 · Lynch · 2014 [cited by examiner]
US 20140282623A1 · Conover · 2014 [cited by examiner]
US 20140289244A1 · Procopio · 2014 [cited by examiner]
US 20140304505A1 · Dawson · 2014 [cited by applicant]
US 20150199196A1 · Cairns · 2015 [cited by examiner]
US 20160085765A1 · Verma · 2016 [cited by examiner]
US 20170139553A1 · Rose · 2017 [cited by examiner]
US 20170351396A1 · Passeri · 2017 [cited by examiner]
CN 106471487A · 2017 [cited by examiner]
JP 2004005110A · 2004 [cited by examiner]
JP 2014109891A · 2014 [cited by examiner]
WO WO2006005812A2 · 2006 [cited by examiner]
WO WO2015103249A2 · 2015 [cited by examiner]
U. Saif, “Opportunistic File-Associations for Mobile Operating Systems,” Seventh IEEE Workshop on Mobile Computing Systems & Applications (WMCSA'06 Supplement), Orcas Island, WA, USA, 2006, pp. 82-86, doi: 10.1109/WMCSA… [cited by applicant]
Adding Actions to Right Click Menu—Windows 10 Forums; https://www.tenforums.com/customization/27149- adding-actions-right-click-menu.html;    Oct. 20, 2015, 7 pages. [cited by applicant]
How to Manually Edit the Right Click Menu in Windows; https://www.online-tech-tips.com/computer-tips/ windows-right-click-context-menu/ ; Jan. 2, 2015, 14 pages. [cited by applicant]