Skip to content

Instantly share code, notes, and snippets.

Avatar

Dmitry Maslennikov daimor

View GitHub Profile
View %CJS.RoutineWizard.cls
/// Studio Template:<br>
/// Create a new Cache JavaScript Routine.
Class %CJS.RoutineWizard Extends %ZEN.Template.studioTemplate [ StorageStrategy = "" ]
{
Parameter TEMPLATENAME = "Cache JavaScript";
Parameter TEMPLATETITLE = "Cache JavaScript";
Parameter TEMPLATEDESCRIPTION = "Create a new Cache JavaScript routine.";
@daimor
daimor / csession
Last active Jan 26, 2018
csession script which working with docker
View csession
#!/bin/bash
NAME=$1
CONTAINER=`docker container ls -q -f "name=$NAME"`
if [ -z $CONTAINER ]
then
echo "Docker container with name $NAME not found"
exit 1
fi
View Utils.Global.cls
Class Utils.Global Extends %RegisteredObject
{
/// Анализ размера глобала, с анализом размера его подузлов, на указанную вложенность
/// все необходимые параметры будут запршены при запуске
ClassMethod GlobalSize() [ PublicList = (big, DatabaseBlockSize, blksiz, cc, Bytes, Count, gls, lev) ]
{
set $ztrap="err"
set dir=$$selectdb()
do {
@daimor
daimor / cosJSON.isc
Created Dec 21, 2016 — forked from isc-bspead/cosJSON.isc
Macros for writing forward compatible JSON code in InterSystems Caché 2016.1
View cosJSON.isc
#include %occReference
#if $$$comClassDefined("%Library.Object")
#define jsonClassIsLatestVersion $classIsLatestVersion
//usage: obj.$$$jsonClassIsLatestVersion()
#define jsonExtends $extends
//usage: {}.$$$jsonExtends(classname)
#define jsonFromJSON $fromJSON
//usage: {}.$$$jsonFromJSON(string)
#define jsonGetIterator $getIterator
//usage: obj.$$$jsonGetIterator()
View irc bot on intersystems cache
#include %occInclude
kill
set host="chat.freenode.net"
set port="6667"
set sock=##class(%IO.Socket).%New()
set linepat=##class(%Regex.Matcher).%New("^\:([^\!\ ]+)\![^\ ]+\ (.+)$")
set privmsg=##class(%Regex.Matcher).%New("^PRIVMSG #([^\ ]+) \:(.+)")
set action=##class(%Regex.Matcher).%New("!(?:bot|BOT) (.+)")
try {
View Debug.Trace.cls
Class Debug.Trace Extends %RegisteredObject
{
ClassMethod On(aGN As %String = "") As %Status [ ProcedureBlock = 0 ]
{
#define InvalidIO $io'=$p
if aGN="" set %TraceLog=$name(^CacheTemp.TraceLog)
else set %TraceLog=aGN
kill @%TraceLog
for i=1:1:$stack-1 {
@daimor
daimor / ccontrol
Last active Aug 19, 2021
bash completions for InterSystems cache
View ccontrol
#!/bin/bash
# bash completions for InterSystems ccontrol
_instances()
{
if [ $# == 0 ] || [ $1 == "all" ]; then
echo $(ccontrol qlist | cut -d'^' -f1 | tr '\n' ' ')
else
echo $(ccontrol qlist | grep "\^$1\," | cut -d'^' -f1 | tr '\n' ' ')
fi
@daimor
daimor / StudioRoutines.xml
Created May 18, 2014
Caché JavaScript Routine
View StudioRoutines.xml
<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25" zv="Cache for UNIX (SUSE Linux Enterprise Server for x86-64) 2014.1 (Build 608U)" ts="2014-05-19 00:22:31">
<Class name="%CJS.RoutineWizard">
<Description><![CDATA[
Studio Template:<br>
Create a new Cache JavaScript Routine.]]></Description>
<StorageStrategy/>
<Super>%ZEN.Template.studioTemplate</Super>
<TimeChanged>63325,86382.045933</TimeChanged>
<TimeCreated>63325,65834.566957</TimeCreated>
View %CDEV.XML
<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
<Class name="%CDEV.JSON.Base">
<Abstract>1</Abstract>
<Super>%Library.RegisteredObject</Super>
<TimeCreated>63290,83008.228357</TimeCreated>
<Method name="%WriteJSON">
</Method>
@daimor
daimor / globalsdb
Last active Aug 29, 2015
GlobalsDB starts script
View globalsdb
#!/bin/bash
#
### BEGIN INIT INFO
# Provides: GlobalsDB
# Required-Start:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: Starts GlobalsDB
# Description: Starts GlobalsDB
### END INIT INFO