# US 2019/0171731 A1 · Code Management System

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0171731 A1
- Document ID: US20190171731A1
- Status: Published application
- Kind: A1
- Application number: 15/833,150
- Filed: 2017-12-06
- Published: 2019-06-06
- Earliest claimed: 2017-12-06
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Tomasz Hanusiak; Konrad W. Komnata; Jaroslaw Osinski; Grzegorz P. Szczepanik
- Web page: https://patentgrep.com/patent/US20190171731A1

## CPC

- G06F 16/188: Virtual file systems
- G06F 16/122: {using management policies (point-in-time backing up or restoration of persistent data G06F11/1446; file migration policies for HSM systems G06F16/185)}
- G06F 16/1734: {Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs}
- G06F 16/219: {Managing data history or versioning (querying versioned data G06F16/2474; querying temporal data G06F16/2477)}
- G06F 21/10: Protecting distributed programs or content, e.g. vending or licensing of copyrighted material (protection in video systems or pay television H04N7/16) {; Digital rights management [DRM]}
- H04L 67/06: specially adapted for file transfer, e.g. file transfer protocol [FTP]
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method, apparatus, computer system, and computer program product for receiving, by a computer system, a usage request to use a subset of the objects from a client data processing system, wherein the objects are stored in a data repository. Responsive to receiving the usage request, the method transfers, by the computer system, the subset of the objects to the client data processing system and responsive to transferring the subset of the objects to the client data processing system, generating, by the computer system, an object transfer record, wherein the object transfer record describes the subset of the objects sent to the client data processing system. The method manages a utilization of the subset of the objects on the client data processing system utilizing the object transfer record.

## Claims

### Claim 1

A method for managing usage of objects, the method comprising:
receiving, by a computer system, a usage request to use a subset of the objects from a client data processing system, wherein the objects are stored in a data repository;
responsive to receiving the usage request, transferring, by the computer system, the subset of the objects to the client data processing system;
responsive to transferring the subset of the objects to the client data processing system, generating, by the computer system, an object transfer record, wherein the object transfer record describes the subset of the objects sent to the client data processing system; and
managing a utilization of the subset of the objects on the client data processing system utilizing the object transfer record.

### Claim 2 (depends on 1)

The method of claim 1 further comprising:
sending the object transfer record to a usage management server; and
wherein managing the utilization of the subset of the objects utilizing the object transfer record comprises:
managing, by the usage management server, the utilization of the subset of the objects on the client data processing utilizing the object transfer record.

### Claim 3 (depends on 2)

The method of claim 2, wherein managing, by the usage management server, the utilization of the subset of the objects on the client data processing system utilizing the object transfer record comprises:
identifying, by the usage management server, a license for the client data processing system utilizing the object transfer record; and
applying the license to the object transfer record.

### Claim 4 (depends on 3)

The method of claim 3 further comprising:
responsive to identifying the license, generating a usage policy to the subset of the objects utilizing the license.

### Claim 5 (depends on 1)

The method of claim 1 further comprising:
responsive to utilizing the subset of the objects by the client data processing system, generating an object usage record describing the subset of the objects utilized by the client data processing system.

### Claim 6 (depends on 5)

The method of claim 5 further comprising:
sending the object usage record and the object usage record to a usage management server; and
managing the utilization of the subset of the objects utilizing the object usage record.

### Claim 7 (depends on 5)

The method of claim 5 further comprising:
sending the object transfer record and the object usage record to a usage management server;
wherein managing the utilization of the subset of the objects utilizing the object usage record comprises:
managing, by the usage management server, the utilization of the subset of the objects on the client data processing system utilizing the object transfer record and the object usage record.

### Claim 8 (depends on 7)

The method of claim 7, wherein managing, by the usage management server, the utilization of the subset of the objects on the client data processing system utilizing the object transfer record and the object usage record comprises:
identifying, by the usage management server, a license for the client data processing system utilizing the object transfer record and the object usage record; and
applying a license to the object transfer record and the object usage record.

### Claim 9 (depends on 8)

The method of claim 8, wherein applying the license to the object transfer record and the object usage record comprises:
managing the utilization of the subset of the objects on the data processing system utilizing the object transfer record and the object usage record.

### Claim 10 (depends on 6)

The method of claim 6, wherein the object transfer record verifies a transfer of the subset of the objects to the client data processing system and the object usage record verifies a utilization of the subset of the objects on the client data processing system.

### Claim 11

A virtual file management system comprising:
a computer system;
a virtual file system on the computer system, wherein the virtual file system receives a usage request to use a subset of objects from a client data processing system, wherein the objects are stored in a data repository and transfers the subset of the objects to the client data processing system in response to receiving the usage request;
a transfer agent runs on the computer system, wherein the transfer agent generates an object transfer record in response to the subset of the objects being transferred to the client data processing system, wherein the object transfer record describes the subset of the objects sent to the client data processing system; and
a usage management server that manages a utilization of the subset of the objects on the client data processing system utilizing the object transfer record.

### Claim 12 (depends on 11)

The virtual file management system of claim 11, wherein the transfer agent sends the object transfer record to the usage management server; and wherein in managing the utilization of the subset of the objects utilizing the object transfer record, the usage management server manages the utilization of the subset of the objects on the client data processing utilizing the object transfer record.

### Claim 13 (depends on 12)

The virtual file management system of claim 12, wherein in managing the utilization of the subset of the objects on the client data processing system utilizing the object transfer record, the usage management server identifies a license for the client data processing system utilizing the object transfer record and applies the license to the object transfer record.

### Claim 14 (depends on 13)

The virtual file management system of claim 13, wherein the usage management server identifies a usage policy for the subset of the objects utilizing the license in response to identifying the license.

### Claim 15 (depends on 11)

The virtual file management system of claim 11, further comprising:
a usage agent running on the client data processing system that generates an object usage record describing the subset of the objects utilized by the client data processing system in response to utilizing the subset of the objects by the client data processing system.

### Claim 16 (depends on 15)

The virtual file management system of claim 15, wherein the usage agent sends the object usage record to the usage management server and manages the utilization of the subset of the objects utilizing the object usage record.

### Claim 17 (depends on 15)

The virtual file management system of claim 15, wherein the transfer agent sends the object transfer record to the usage management server and usage agent sends the object usage record to the usage management server, and wherein the usage management server manages the utilization of the subset of the objects on the client data processing system utilizing the object transfer record and the object usage record.

### Claim 18 (depends on 17)

The virtual file management system of claim 17, wherein in managing the utilization of the subset of the objects on the client data processing system utilizing the object transfer record and the object usage record, the usage management server identifies a license for the client data processing system utilizing the object transfer record and the object usage record, and applies the license to the object transfer record and the object usage record.

### Claim 19

A computer program product for managing usage of objects, the computer program product comprising:
a computer readable-storage media;
first program code, stored on the computer-readable storage media, for receiving a usage request to use a subset of the objects from a client data processing system, wherein the objects are stored in a data repository;
second program code, stored on the computer-readable storage media, responsive to receiving the usage request, for transferring the subset of the objects to the client data processing system;
third program code, stored on the computer-readable storage media, responsive to receiving the requesting, for generating an object transfer record, wherein the object transfer record describes the subset of the objects sent to the client data processing system; and
fourth program code, stored on the computer-readable storage media, for managing a utilization of the subset of the objects on the client data processing system utilizing the object transfer record.

### Claim 20 (depends on 19)

The computer program product of claim 19 further comprising:
fifth program code, stored on the computer-readable storage media, for sending the object transfer record to a usage management server; and
wherein the fourth program code comprises:
program code, stored on the computer-readable storage media, for managing the utilization of the subset of the objects on the client data processing utilizing the object transfer record.

### Claim 21 (depends on 20)

The computer program product of claim 20, the program code for managing the utilization of the subset of objects on the client data processing system utilizing the object transfer record comprises:
program code, stored on the computer-readable storage media, for identifying, by the usage management server, a license for the client data processing system utilizing the object transfer record; and
program code, stored on the computer-readable storage media, for applying the license to the object transfer record.

### Claim 22 (depends on 19)

The computer program product of claim 19 further comprising:
fifth program code, stored on the computer-readable storage media, responsive to utilizing the subset of the objects by the client data processing system, for generating an object usage record describing the subset of the objects utilized by the client data processing system; and
sixth program code, stored on the computer-readable storage media, for sending the object usage record and the object usage record to a usage management server.

### Claim 23

A method for managing usage of objects, the method comprising:
receiving, by a computer system, a usage request to use a subset of the objects from a client data processing system, wherein the objects are stored in a data repository for a version control system;
responsive to receiving the usage request, transferring, by the computer system, a subset of the objects to the client data processing system;
responsive to transferring the subset of the objects, by the computer system, generating an object transfer record, wherein the object transfer record describes the subset of the objects transferred to the client data processing system;
responsive to utilizing the subset of the objects on the client data processing system, generating, by the client data processing system an object usage record, wherein the object usage record describes the subset of the objects utilized by the client data processing system; and
managing a utilization of the subset of the objects on the client data processing system utilizing at least one of the object transfer record or the object usage record.

### Claim 24

A virtual file management system comprising:
a computer system;
a client data processing system;
a transfer agent running on the computer system, wherein the transfer agent sends an object transfer record to a usage management server, wherein an object usage record describes a subset of objects sent to the client data processing system; and wherein the usage management server manages a usage of the subset of the objects utilizing at least one of the object usage record or the object transfer record;
a usage agent running on the client data processing system, wherein usage agent generates the object usage record in response to the usage of the subset of the objects on the client data processing system, wherein the object usage record describes the subset of the objects utilized by the client data processing system in response to the client data processing system; and sends the object usage record to a usage management server that manages a utilization of the subset of the objects utilizing the object usage record; and
a usage management server that manages a utilization of the subset of the objects on the client data processing system using at least one of the object transfer record received from the transfer agent or the object usage received from the usage agent.

### Claim 25 (depends on 24)

The virtual file system of claim 24, wherein in managing the utilization of the subset of the objects utilizing the object usage record usage, the usage management server identifies a license for the client data processing system utilizing the object transfer record and the object usage record; and applies the license to the object transfer record and the object usage record.
