MCPcopy Create free account
hub / github.com/LOLINTERNETZ/vscodeoffline / process_loaded_extension

Method process_loaded_extension

vscoffline/server.py:159–189  ·  view source on GitHub ↗
(self, extension, extensiondir)

Source from the content-addressed store, hash-verified

157 log.info(f'Loaded {len(self.extensions)} extensions')
158
159 def process_loaded_extension(self, extension, extensiondir):
160 name = extension['identity']
161
162 # Repoint asset urls
163 for version in extension["versions"]:
164 if "targetPlatform" in version:
165 targetPlatform = version['targetPlatform']
166 asseturi = vsc.URLROOT + os.path.join(extensiondir, version['version'], targetPlatform)
167 else:
168 asseturi = vsc.URLROOT + os.path.join(extensiondir, version['version'])
169
170 version['assetUri'] = asseturi
171 version['fallbackAssetUri'] = asseturi
172 for asset in version['files']:
173 asset['source'] = asseturi + '/' + asset['assetType']
174
175 # Map statistics for later lookup
176 stats = {
177 'averagerating': 0,
178 'install': 0,
179 'weightedRating': 0
180 }
181 if 'statistics' not in extension or not extension['statistics']:
182 log.info(f'Statistics are missing from extension {name} in {extensiondir}, generating.')
183 else:
184 extension_statistics = {}
185 for statistic in extension['statistics']:
186 extension_statistics[statistic['statisticName']] = statistic['value']
187 stats.update(extension_statistics)
188 extension['stats'] = stats
189 return extension
190
191 def update_state_loop(self):
192 while True:

Callers 1

update_stateMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected