Never been to TextSnippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world (or not, you can keep them private!)

« Newer Snippets
Older Snippets »
2 total  XML / RSS feed 

VB.net Modified Preorder Tree Traversal

In order to utilize this, I would recommend reading the article located at sitepoint.com (Search google for modified preorder tree traversal). It took me quite some time and some help from a coworker to port this from PHP to VB.net. :D

Replace the application("sql").query("*") with your SQL code, I was inclined to write my own SQL class to make querying DB's easier, but you can do whatever you want.
record = application("sql").query("select * from categories order by lft asc")
dim output as new arraylist()
dim right as new arraylist()
do while not record.eof
  if right.count > 0
    do while right(right.count - 1) < record("rgt").value
      right.removeAt(right.count - 1)
      if right.count = 0 then exit do
    loop
  end if
  response.write(record("name").value & " is " & right.count & " levels deep in the tree..." & controlchars.cr)
  right.add(record("rgt").value)
  record.movenext
loop

Net::HTTP with timeout support http and https and basic auth

This takes a username, password, url and optional time out

require 'net/http'
require 'net/https'
#Usage: username pass urlStr time_out
#

    urlStr = 'http://localhost:3000/cron/cron'
    username = "badname"
    pass = "badpass"
    time_out = 60

    if ARGV[3] != nil
     time_out = ARGV[3].to_i
    end

    if ARGV[2] != nil
     urlStr = ARGV[2]
    end
    
    if ARGV[1] != nil and ARGV[0] != nil
     username = ARGV[0]
     pass = ARGV[1]
    end
    puts urlStr + " user: "+username
    
    url = URI.parse(urlStr)
    use_ssl = url.scheme == 'https'
    req = Net::HTTP::Get.new url.path
    req.basic_auth username, pass
 
    http = Net::HTTP.new(url.host, url.port)
    http.read_timeout=time_out
    if use_ssl
      http.use_ssl = true
    end
    res = http.start { |web| 
      web.request(req) 
    }
    
    puts res.body
« Newer Snippets
Older Snippets »
2 total  XML / RSS feed