(FILECREATED "22-Sep-86 01:36:16" {QV}<NOTECARDS>1.3K>NEXT>KIRKPATCH028.;2 6228   

      changes to:  (VARS KIRKPATCH028COMS x)

      previous date: "22-Sep-86 00:35:05" {QV}<NOTECARDS>1.3K>NEXT>KIRKPATCH028.;1)


(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT KIRKPATCH028COMS)

(RPAQQ KIRKPATCH028COMS ((* * fixes bug 141 in NCTYPESMECH)
			   (FNS NC.CardTypeStubLoader NC.FindCardTypeFile)
			   (* * (change to)
			      NCLOCALDEVICECOMS)
			   (P (PUTHASH (QUOTE LOCALSINGLEUSER)
				       (create NoteFileDevice OpenNoteFileFn ←
					       (FUNCTION NCLocalDevice.OpenNoteFile)
					       CloseNoteFileFn ← (FUNCTION 
								      NCLocalDevice.CloseNoteFile)
					       CreateNoteFileFn ← (FUNCTION 
								     NCLocalDevice.CreateNoteFile)
					       DeleteNoteFileFn ← (FUNCTION 
								     NCLocalDevice.DeleteNoteFile)
					       CompactNoteFileFn ← (FUNCTION 
								    NCLocalDevice.CompactNoteFile)
					       RepairNoteFileFn ← (FUNCTION 
							   NCLocalDevice.InspectAndRepairNoteFile)
					       BuildHashArrayFn ← (FUNCTION 
								     NCLocalDevice.BuildHashArray)
					       NoteFileOpenPFn ← (FUNCTION 
								      NCLocalDevice.NoteFileOpenP)
					       CheckpointNoteFileFn ← (FUNCTION 
								 NCLocalDevice.CheckpointNoteFile)
					       ConvertNoteFileFormatFn ← (FUNCTION 
							      NCLocalDevice.ConvertNoteFileFormat)
					       TruncateNoteFileFn ← (FUNCTION 
								   NCLocalDevice.TruncateNoteFile)
					       NewCardUIDFn ← (FUNCTION NCLocalDevice.NewCardUID)
					       MarkCardDeletedFn ← (FUNCTION 
								    NCLocalDevice.MarkCardDeleted)
					       GetCardInfoFn ← (FUNCTION NCLocalDevice.GetCardInfo)
					       PutCardPartFn ← (FUNCTION NCLocalDevice.PutCardPart)
					       GetCardPartFn ← (FUNCTION NCLocalDevice.GetCardPart)
					       ObtainWritePermissionFn ← (FUNCTION 
							      NCLocalDevice.ObtainWritePermission)
					       ReleaseWritePermissionFn ← (FUNCTION 
							     NCLocalDevice.ReleaseWritePermission)
					       CancelCacheSubscriptionFn ← (FUNCTION 
							    NCLocalDevice.CancelCacheSubscription))
				       NC.DeviceVectorsHashArray))))
(* * fixes bug 141 in NCTYPESMECH)

(DEFINEQ

(NC.CardTypeStubLoader
  (LAMBDA (TypeName FileSuggestion)                          (* kirk: "21-Sep-86 23:54")

          (* * Load card type TypeName using FileSuggestion as the first place to look. Otherwise look in the directories 
	  specified by NoteCardsDirectories.)



          (* * fgh 2/3/86 First written.)



          (* * kirk 6/20/86 Added NCP.Add...CardStub fn load and call)



          (* * kirk 9/9/86 Changed the name of the FN to search for to NCAddStub...Card)



          (* * kirk 9/21/86 added RESETLST)


    (LET ((FileName (PACK* (QUOTE NC)
			     (U-CASE TypeName)
			     (QUOTE CARD)))
	  FullFileName oldFILEDATES AddTypeFn AddTypeForm)
         (SETQ oldFILEDATES (GETPROP FileName (QUOTE FILEDATES)))
         (SETQ FullFileName (NC.FindCardTypeFile TypeName FileSuggestion FileName))
         (if FullFileName
	     then (RESETLST (RESETSAVE NIL (BQUOTE (COND
							     (oldFILEDATES
							       (PUTPROP , (LIST (QUOTE QUOTE)
										    FileName)
									  (QUOTE FILEDATES)
									  oldFILEDATES))
							     (T (REMPROP , (LIST (QUOTE QUOTE)
										     FileName)
									   (QUOTE FILEDATES))))))

          (* * Load and eval the NC.Add...CardStub fn)


				(SETQ AddTypeFn (PACK* (QUOTE NCAddStub.)
							   TypeName
							   (QUOTE Card)))
				(SETQ AddTypeForm (LOADFNS AddTypeFn FullFileName))
				(if (EQ (CAAR AddTypeForm)
					    (QUOTE NOT-FOUND:))
				    then (NC.ReportError "NC.CardTypeStubLoader"
							     (CONCAT 
					  "NoteCards: Can't find card type stub init procedure: "
								       AddTypeFn " in " FullFileName 
								       "."))))

          (* * this should call NC.AddCardTypeStub)


		    (EVAL AddTypeForm)))))

(NC.FindCardTypeFile
  (LAMBDA (Type FileSuggestion FileName)                     (* kirk: "21-Sep-86 22:53")

          (* * kirk 6/12/86 find code file to implement a card type)



          (* * kirk 9/21/86 added optional FileName parameter)


    (LET (FileName)
         (OR (AND FileSuggestion (INFILEP FileSuggestion))
	       (OR (FINDFILE (OR FileName (PACK* (SETQ FileName (PACK* (QUOTE NC)
										   (U-CASE Type)
										   (QUOTE CARD)))
							 (QUOTE .dcom)))
				 T NOTECARDSDIRECTORIES)
		     (FINDFILE FileName T NOTECARDSDIRECTORIES))))))
)
(* * (change to) NCLOCALDEVICECOMS)

(PUTHASH (QUOTE LOCALSINGLEUSER)
	 (create NoteFileDevice OpenNoteFileFn ← (FUNCTION NCLocalDevice.OpenNoteFile)
		 CloseNoteFileFn ← (FUNCTION NCLocalDevice.CloseNoteFile)
		 CreateNoteFileFn ← (FUNCTION NCLocalDevice.CreateNoteFile)
		 DeleteNoteFileFn ← (FUNCTION NCLocalDevice.DeleteNoteFile)
		 CompactNoteFileFn ← (FUNCTION NCLocalDevice.CompactNoteFile)
		 RepairNoteFileFn ← (FUNCTION NCLocalDevice.InspectAndRepairNoteFile)
		 BuildHashArrayFn ← (FUNCTION NCLocalDevice.BuildHashArray)
		 NoteFileOpenPFn ← (FUNCTION NCLocalDevice.NoteFileOpenP)
		 CheckpointNoteFileFn ← (FUNCTION NCLocalDevice.CheckpointNoteFile)
		 ConvertNoteFileFormatFn ← (FUNCTION NCLocalDevice.ConvertNoteFileFormat)
		 TruncateNoteFileFn ← (FUNCTION NCLocalDevice.TruncateNoteFile)
		 NewCardUIDFn ← (FUNCTION NCLocalDevice.NewCardUID)
		 MarkCardDeletedFn ← (FUNCTION NCLocalDevice.MarkCardDeleted)
		 GetCardInfoFn ← (FUNCTION NCLocalDevice.GetCardInfo)
		 PutCardPartFn ← (FUNCTION NCLocalDevice.PutCardPart)
		 GetCardPartFn ← (FUNCTION NCLocalDevice.GetCardPart)
		 ObtainWritePermissionFn ← (FUNCTION NCLocalDevice.ObtainWritePermission)
		 ReleaseWritePermissionFn ← (FUNCTION NCLocalDevice.ReleaseWritePermission)
		 CancelCacheSubscriptionFn ← (FUNCTION NCLocalDevice.CancelCacheSubscription))
	 NC.DeviceVectorsHashArray)
(PUTPROPS KIRKPATCH028 COPYRIGHT ("Xerox Corporation" 1986))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (2239 4786 (NC.CardTypeStubLoader 2249 . 4146) (NC.FindCardTypeFile 4148 . 4784)))))
STOP