@@ -17,16 +17,17 @@ Property ExternalFile As %Boolean [ Required ];
1717
1818Method RestoreToFileTree ()
1919{
20- set fileStream = ##class (%Stream.FileCharacter ).%OpenId (..FullExternalName ,,.sc )
21- $$$ThrowOnError(sc )
22- do fileStream .CopyFrom (..Contents )
23- $$$ThrowOnError(fileStream .%Save ())
24- if '..ExternalFile {
25- do ##class (SourceControl.Git.Utils ).ImportItem (..Name , 1 , 1 )
26- do ##class (SourceControl.Git.Utils ).AddToServerSideSourceControl (..Name )
27- }
20+ set fileStream = ##class (%Stream.FileCharacter ).%New ()
21+ set fileStream .Filename = ..FullExternalName
22+ $$$THROWONERROR(fileStream .CopyFrom (..Contents ))
23+ $$$THROWONERROR(fileStream .%Save ())
24+
25+ if '..ExternalFile {
26+ do ##class (SourceControl.Git.Utils ).ImportItem (..Name , 1 , 1 )
27+ do ##class (SourceControl.Git.Utils ).AddToServerSideSourceControl (..Name )
28+ }
2829
29- $$$ThrowOnError(..%DeleteId (..%Id ()))
30+ $$$ThrowOnError(..%DeleteId (..%Id ()))
3031}
3132
3233ClassMethod SaveDiscardState (InternalName As %String , name As %String ) As %Status
@@ -63,8 +64,16 @@ ClassMethod SaveDiscardState(InternalName As %String, name As %String) As %Statu
6364ClassMethod DiscardStatesInBranch () As %DynamicArray
6465{
6566 set currentBranch = ##class (SourceControl.Git.Utils ).GetCurrentBranch ()
66- set statement = " SELECT ID FROM SourceControl_Git.DiscardState WHERE branch = ?"
67- set resultSet = ##class (%SQL.Statement ).%ExecDirect (, statement , currentBranch )
67+
68+ set query = " SELECT ID FROM SourceControl_Git.DiscardState WHERE branch = ?"
69+ set statement = ##class (%SQL.Statement ).%New ()
70+ set status = statement .%Prepare (query , 0 )
71+ $$$ThrowOnError(status )
72+ set resultSet = statement .%Execute (currentBranch )
73+ if (resultSet .%SQLCODE < 0 ) {
74+ throw ##class (%Exception.SQL ).CreateFromSQLCODE (resultSet .%SQLCODE ,resultSet .%Message )
75+ }
76+
6877 set discardStates = []
6978 while resultSet .%Next () {
7079 set discardState = ..%OpenId (resultSet .ID )
0 commit comments