Skip to content

Commit 2700c4c

Browse files
committed
Fix minor errors in the message router
This commit fixes the following errors in message router: - The documents class had no way of clearing the document store. This is needed during tests - The document store would error if a non-existant document was called. This commit adds a simple nil check - The getResource request should have returned if an error was found. This commit adds explicit returns where required
1 parent 54be85e commit 2700c4c

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

server/lib/puppet-languageserver/message_router.rb

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,12 @@ def self.remove_document(uri)
1111
@documents[uri] = nil
1212
end
1313

14+
def self.clear
15+
@documents.clear
16+
end
17+
1418
def self.document(uri)
19+
return nil if @documents[uri].nil?
1520
@documents[uri].clone
1621
end
1722
end
@@ -42,7 +47,10 @@ def receive_request(request)
4247
when 'puppet/getResource'
4348
type_name = request.params['typename']
4449
title = request.params['title']
45-
request.reply_result(LanguageServer::PuppetCompilation.create('error' => 'Missing Typename')) if type_name.nil?
50+
if type_name.nil?
51+
request.reply_result(LanguageServer::PuppetCompilation.create('error' => 'Missing Typename'))
52+
return
53+
end
4654
resources = nil
4755

4856
if title.nil?
@@ -51,8 +59,10 @@ def receive_request(request)
5159
resources = PuppetLanguageServer::PuppetHelper.resource_face_get_by_typename_and_title(type_name, title)
5260
resources = [resources] unless resources.nil?
5361
end
54-
request.reply_result(LanguageServer::PuppetCompilation.create('data' => '')) if resources.nil? || resources.length.zero?
55-
62+
if resources.nil? || resources.length.zero?
63+
request.reply_result(LanguageServer::PuppetCompilation.create('data' => ''))
64+
return
65+
end
5666
# TODO: Should probably move this to a helper?
5767
content = resources.map(&:to_manifest).join("\n\n") + "\n"
5868
request.reply_result(LanguageServer::PuppetCompilation.create('data' => content))

0 commit comments

Comments
 (0)