About
I am Chaitanya Krishna Ande, currently working as a Post-doctoral Researcher at the Eindhoven University of Technology, The Netherlands. I practice something called 'materials modeling'.
Materials modeling uses the powerful combination of quantum mechanics and computers to enhance understanding of materials. It adds significantly to what can be achieved by experiments alone. The word materials is used in the broadest sense possible, encompassing anything that is tangible. Of course, all materials cannot be modeled equally well, but that is the ultimate aim.
The broad aim of my work is to use materials modeling and achieve the following:
- Determine electrical, mechanical, optical and thermal properties of any material from a knowledge of its constitution and structure alone. For example, determing all the above properties for diamond, knowing that it is made entirely of carbon (constitution) arranged in a certain way (structure).
- Explain, understand and predict how materials transform from one form to another. For example, understand how water froms from hydrogen and oxygen on a platinum surface, but on not in the atmosphere. Also, any chemical reaction, or phase transformation is a valid example.
Materials modeling requires working at the interface of materials science, physics, chemistry and computer programming and therefore requires a good understanding of each of these subjects.
Currently, I am working on the chemistry happening at surfaces during the growth of a thin-film material. In particular, I am focusing on the chemistry of a deposition technique called Atomic Layer Deposition (ALD). The entire semi-conductor industry is based upon thin-film technology. Other technological applications include solar cells, batteries, sensors, and so on. For more information, you can visit our group website.


For example:
public BankAccount(long accountNumber, String owner, double balance, double interestRate) { // fields initialization }
Such object is hard to instantiate, especially if some parameters are optional. It is better to rewrite such code using the builder pattern.
Use the field below to specify the maximum number of parameters a constructor is allowed to have.
Use the combobox below to specify if the inspection should ignore constructors with certain visibility.


Welcome! I hope you have a lovely time looking through my portfolio!
Howdy! I'm Tom!
I am a Trainee Developer at the Mayden Academy. I am from Southampton in the UK and currently based
in Bath
I have a background in Science and Research, with a PhD in Biochemistry and Structural Biology.
Specialising in Mass Spectrometry, Molecular Biology and Environmental Chemistry
Upon completing the Mayden Academy Full Stack Track, I will be proficient in:
I like Music (I play the Guitar and Bass.......and the Trombone very badly!), Rocket League (and other video games) and am an Entry-Level Fantasy Fiction Enthusiast
I CAN TELL YOUR MORE!

I CAN TELL YOUR MORE!

I CAN TELL YOUR MORE!

I CAN TELL YOUR MORE!

I CAN TELL YOUR MORE!

I CAN TELL YOUR MORE!


Ph.D. Economics Candidate
specializing in public and economic policy,
applied microeconomics and econometrics,
industrial organization,
education and health economics.
<EMAIL_ADDRESS>evashapiro.github.io
Tel.<PHONE_NUMBER>
Department of Economics
University of California
1156 High St.
Santa Cruz, CA 95064
I am a Ph.D. economist specializing in applied microeconomics and econometrics, with research focusing on public economics, industrial organization, and health and education economics. My research addresses issues in vehicle safety regulation, non-cognitive development and student achivement, and student language ability tracking. In addition to my research, I am passionate about my students. My teaching experience includes instruction of both lecture and seminar courses at multiple institutions in microeconomics, business strategy, IO and communication.
Ph.D. Economics, University of California at Santa Cruz (2019)
M.P.A. London School of Economics (2011)
A.B. Economics, Princeton University (2009)
Lecturer, U.C. Santa Cruz
Summer 2015, Summer 2016
Guest Lecturer, California State University - East Bay
Spring 2015
Graduate Student Instructor, U.C. Santa Cruz
Spring 2015, Fall 2015, Spring 2016
Graduate Student Instructor, U.C. Santa Cruz
Fall 2013, Winter 2014, Fall 2014, Winter 2015, Winter 2016
Teaching Assistant, Princeton University (2008-2009)
California Community Colleges Research and Planning Group (2015-present)
Project Cornerstone (2014-present)
Breakthrough Institute (2011)
Compass Lexecon (2009)
Leadership Program, Princeton University (2006-2009)
Programming Languages: Java, Python, R, HTML, SQL, Bash.
Foreign Languages: English (native), French (fluent), Spanish (basic).
Professional Affiliations: American Economic Association, Women Impacting Public Policy.


This page shows automated results of the Lyrids 2014, based on visual observations reported by citizen scientists through the report form of the International Meteor Organization (IMO). The information on this page is generated automatically; for scientific use please refer to manual analyses published in scientific journals (such as WGN). Send your feedback regarding this page to Geert Barentsen.
Page contents:
Note that the data will finally go into the Visual Meteor Database (VMDB) with manual inspection and rectifications. We are curretly completing the files of 2008-2011. The VMDB is an enormous project - any help will be greatly appreciated.
Page generated: 2014 May 7 at 10:00 UTC.
The graph below shows the ZHR (Zenithal Hourly Rate), which is the number of meteors an observer would see under a very dark sky with the radiant of the shower in zenith.
ZHRmax = 16 based on 217 Lyrids reported in 83 intervals, assuming population index r = 2.1
| Time (UTC) | Solarlon | nINT | nLYR | ZHR | Particle density | |
|---|---|---|---|---|---|---|
| 2014-04-18 21:20 | 28.558 | 1 | 2 | 6 | ±3 | 9 / 109·km3 |
| 2014-04-20 21:45 | 30.528 | 12 | 15 | 9 | ±2 | 13 / 109·km3 |
| 2014-04-21 01:32 | 30.682 | 2 | 4 | 4 | ±2 | 6 / 109·km3 |
| 2014-04-21 21:09 | 31.480 | 7 | 23 | 12 | ±2 | 17 / 109·km3 |
| 2014-04-21 23:46 | 31.586 | 5 | 15 | 7 | ±2 | 10 / 109·km3 |
| 2014-04-22 03:55 | 31.755 | 3 | 12 | 14 | ±4 | 20 / 109·km3 |
| 2014-04-22 21:30 | 32.469 | 8 | 16 | 9 | ±2 | 13 / 109·km3 |
| 2014-04-22 22:50 | 32.523 | 6 | 21 | 10 | ±2 | 14 / 109·km3 |
| 2014-04-22 23:45 | 32.561 | 14 | 33 | 11 | ±2 | 16 / 109·km3 |
| 2014-04-23 00:37 | 32.596 | 13 | 46 | 16 | ±2 | 23 / 109·km3 |
| 2014-04-23 01:43 | 32.641 | 5 | 18 | 15 | ±3 | 21 / 109·km3 |
| 2014-04-23 23:08 | 33.510 | 4 | 7 | 5 | ±2 | 7 / 109·km3 |
| 2014-04-25 00:34 | 34.543 | 3 | 5 | 3 | ±1 | 4 / 109·km3 |
The reported intervals are automatically added together into the bins shown above, based on the number of meteors and the distribution of the intervals. For each bin, the following parameters are computed:
Data has been received from 32 observers in 18 countries. Thank you for your efforts!
Note: click on the map for an interactive version.
| Observer | Country | Teff | nLYR |
|---|---|---|---|
| Scott Pierre Bancolita | Philippines | 1.98h | 2 |
| Carlos Burgos | Spain | 3.54h | 24 |
| Josafary Campelo | Brazil | 1.85h | 22 |
| Kevin Foerster | Germany | 1.30h | 3 |
| Kevin Förster | Germany | 2.55h | 10 |
| Dmitry Gavriljuk | Russia | 1.00h | 3 |
| Sire Eduard Gella | Philippines | 2.96h | 5 |
| Gerald Peter Geronimo | Philippines | 2.96h | 5 |
| Milada Jakubecova | Slovakia | 1.00h | 2 |
| Zdenek Komarek | Slovakia | 1.00h | 2 |
| Jerwin Laurente | Philippines | 2.96h | 4 |
| Qiang Ma | China | 2h | 4 |
| Andjelka Milovanovic | Serbia | 1.32h | 9 |
| Angelo Gabriel Ramos | Philippines | 2.96h | 6 |
| Jatin Rathod | India | 0.49h | 1 |
| Ina Rendtel | Germany | 1.50h | 10 |
| Ivan Sergey | Belarus | 0.57h | 2 |
| Joan Serrq | Spain | 3.53h | 10 |
| Miguel Ange Serra Martin | Spain | 3.87h | 16 |
| Michal Stefancik | Slovakia | 2.47h | 5 |
| Jurgen Rendtel | Germany | 3.15h | 15 |
| Alexsandr Morozov | Russia | 1.19h | 6 |
| Salvador Aguirre | Mexico | 1.00h | 7 |
| Alexandr Maidik | Ukraine | 3h | 9 |
| Sasha Prokofyev | Russia | 3h | 10 |
| Pierre Bader | Germany | 6h | 13 |
| Branislav Savic | Serbia | 0.85h | 3 |
| Vilem Heblik | Czech Republic | 2.50h | 11 |
| Koen Miskotte | Netherlands | 2.18h | 4 |
| Stefan Schmeissner | Germany | 5.63h | 21 |
| Dunja Pavlovic | Serbia | 1.32h | 8 |
| Javor Kac | Slovenia | 2.26h | 12 |
| Roland Winkler | Germany | 1.59h | 2 |
Create your own analysis. The files below can be opened using Excel:
lyr2014_rate.csv (number of meteors per interval per observer)
lyr2014_magn.csv (number of meteors per magnitude bin per observer)
The information on this page may be distributed freely provided credit is given to the International Meteor Organization (IMO) and, when possible, to the individual observers. The computer facilities to generate this page are provided by ESA/RSSD and Armagh Observatory.
References:


{{ template "_internal/google_analytics.html" . }} {{- partial "head.html" . -}}
{{- partial "header.html" . -}} {{- partial "sections/about.html" . -}} {{- partial "sections/do_things.html" . -}} {{- partial "footer.html" . -}} {{- partial "scripts.html" . -}}


For the first time I’ve participated in “Advent of Code” contest. It promised to be a fun time and a good opportunity to learn a new programming language. I’ve taken Clojure from my bucket list and dived head first into the contest.
The first few tasks are deliberately very easy, so that participants firstly would get into the mood and would not detract by the bar raised too high, and secondly to let one to get acquainted with the platform and rules, set up the coding environment and get hands-on with the new language (if you one uses such).
The problems were of varying complexity and some of them required prior knowledge of algorithms. The hardest one were about searching a path in a maze. The cool twist was the addition of the IntCode virtual machine. Over the course of a few days the problems were shaping the definition of the IndCode VM. Participants were expected to implement and to debug it in order to solve the problem.
Clojure has shown strong and I’ve rarely struggled with the language. Debugging tools could be better though. All the solutions could be found here on Github.
For an additional fun I’ve produced animations for some of the problems. For that I’ve used awesome Quil library which implements Processing.org API.
Problem 13 - Care Package
Arkanoid AI should be implemented in IntCode. Each block in the game has its own unique value and the answer of the problem is the end score.
Problem 15 - Oxygen System
A robot have been deployed to a maze of unknown structure. By issuing movement and observation commands the maze should be fully explored and a marked cell should be found. Then the time to fill the maze with air should be calculated, given that the air is injected in the bottome left corner and it spreads each tick to the adjacent cells.


;; Example Beginning Student Language Program #| Keyboard Shortcuts: Alt + C :: Clear Alt + R :: Run (Output -> Console) Note: You can also enter `ace.run()` into the console to run the code. |# ;; ========== Types ========== ;; Numbers (check-expect (= 0 -0 0+0i 0-0i 0.0 0. -.  COORD-1) true) (check-expect (coord? 1) false) ;; ========== Functions ========== ;; Numbers (check-expect (< 1 2 3) true) (check-expect (< 1 2 2) false) (check-expect (<= 1 2 2) true) (check-expect (> 3 2 1) true) (check-expect (> 2 2 1) false) (check-expect (>= 2 2 1) true) (check-expect (modulo 0 4) 0) (check-expect (modulo 0 -4) 0) (check-expect (modulo 5 4) 1) (check-expect (modulo -5 4) 3) (check-expect (modulo 5 -4) -3) (check-expect (modulo -5 -4) -1) ;; Lists (check-expect (list) '()) (check-expect (list 1 2 3) (cons 1 (cons 2 (cons 3 '())))) (check-expect (first (list 1 2 3)) 1) (check-expect (rest (list 1 2 3)) (list 2 3)) (check-expect (second (list 1 2 3 4 5 6 7 8)) 2) (check-expect (third (list 1 2 3 4 5 6 7 8)) 3) (check-expect (fourth (list 1 2 3 4 5 6 7 8)) 4) (check-expect (fifth (list 1 2 3 4 5 6 7 8)) 5) (check-expect (sixth (list 1 2 3 4 5 6 7 8)) 6) (check-expect (seventh (list 1 2 3 4 5 6 7 8)) 7) (check-expect (eighth (list 1 2 3 4 5 6 7 8)) 8) (check-expect (append (list 1 2 3) '() (list 4 5)) (list 1 2 3 4 5)) (check-expect (length '()) 0) (check-expect (length (list 1 2 3)) 3) ;; ========== Syntax ========== ;; If Expressions (define (fac1 n) (if (zero? n) 1 (* n (fac1 (sub1 n))))) (check-expect (fac1 10) 3628800) ;; (fac1 1000) => stack overflow ;; And Expressions (check-expect (and #f (/ 1 0)) #f) (check-expect (and #t #t) #t) (check-expect (and #t #f) #f) (check-expect (and #f #t) #f) (check-expect (and #f #f) #f) ;; Or Expressions (check-expect (or #t (/ 1 0)) #t) (check-expect (or #t #t) #t) (check-expect (or #t #f) #t) (check-expect (or #f #t) #t) (check-expect (or #f #f) #f) ;; Cond Expressions (check-expect (cond [true 1]) 1) (check-expect (cond [else 1]) 1) (check-expect (cond [false (/ 1 0)] [true 1] [else (/ 1 0)]) 1) ;; ========== Miscellaneous ========== ;; Matching Brackets [check-expect {= (+ 1 2) 3} true] ;; Closure (define a1 1) (define f1 (lambda (_) a1)) (define (f2 a1) (f1 a1)) (check-expect (f2 2) 1) ;; Tail End Recursion (define (fac2-acc n acc) (if (zero? n) acc (fac2-acc (sub1 n) (* n acc)))) (define (fac2 n) (fac2-acc n 1)) (check-expect (fac2<PHONE_NUMBER>615307998967396728211129263114716991681296451376543577798900561843401706157852350749242617459511490991237838520776666022565442753025328900773207510902400430280058295603966612599658257104398558294257568966313439612262571094946806711205568880457193340212661452800000000000000000000000000000000000000000) ;; Mutually Recursive (define fac3 (lambda (n) (if (zero? n) 1 (* n (fac4 (sub1 n)))))) (define (fac4 n) (if (zero? n) 1 (* n (fac3 (sub1 n))))) (check-expect (fac3 5) 120) (check-expect (fac4 5) 120) ;; A Really Pathological Example of How Errors Work #| (if 1 2) (define) (x 1) x (define x (lambda (_ __) (y _))) (define x 1) (define y z) (x 1) x (make-x 1 2) (define-struct x [_ __]) |#


Heuristic
Description...
Username
Password
Student
Teacher
Sign in
Forgot password
Not registered yet.Create a new account now »


vignettes/CreatingCovariatesUsingCohortAttributes.Rmd
CreatingCovariatesUsingCohortAttributes.Rmd
This vignette assumes you are already familiar with the FeatureExtraction
package.
The FeatureExtraction
package can generate a default set of covariates, such as one covariate for each condition found in the condition_occurrence
table. However, for some reasons one might need other covariates than those included in the default set.
In the vignette called Creating custom covariate builders
a process is described for creating custom covariate builders that create covariates on the fly and can be re-used across studies. In contrast, this vignette describes a process that is probably simpler to use, making use of the cohort_attribute
table in the common data model. It assumes the user has already generated the covariates and loaded them in this table. Below we show a simple example of how this can be done.
To construct custom covariates, the following steps must be taken:
cohort_attribute
table in the common data model.attribute_definition
table in the common data model.createCohortAttrCovariateSettings
function to create a covariateSettings
object pointing to the two tables mentioned in the previous steps.The cohort_attribute
should specify the values of the covariates for every person-cohort_start_date
combination in the cohort(s) of interest. It should at least have the following fields:
cohort_definition_id
, A key to link to the cohort table. Note that this will be come the covariate ID, so you should take care that these IDs do not overlap with IDs of other covariate builders that may be used as well.The first three fields act as a combined key to link the record to an entry in the cohort
table.
Note that records with zero values can be omitted.
The attribute_definition
table defines the attributes. It should have at least the following fields:
The first field links to the cohort_attribute
table, the second field is used as the covariate name.
In this example we will create a single covariate: the length of observation (LOO) prior to the cohort_start_date
. We use the following SQL to construct a cohort_attribute
table and a attribute_definition
table:
/***********************************
File LengthOfObsCohortAttr.sql
***********************************/
IF OBJECT_ID('@cohort_database_schema.@cohort_attribute_table', 'U') IS NOT NULL
DROP TABLE @cohort_database_schema.@cohort_attribute_table;
IF OBJECT_ID('@cohort_database_schema.@attribute_definition_table', 'U') IS NOT NULL
DROP TABLE @cohort_database_schema.@attribute_definition_table;
SELECT cohort_definition_id,
subject_id,
cohort_start_date,
1 AS attribute_definition_id,
DATEDIFF(DAY, observation_period_start_date, cohort_start_date) AS value_as_number
INTO @cohort_database_schema.@cohort_attribute_table
FROM @cohort_database_schema.@cohort_table cohort
INNER JOIN @cdm_database_schema.observation_period op
ON op.person_id = cohort.subject_id
WHERE cohort_start_date >= observation_period_start_date
AND cohort_start_date <= observation_period_end_date
{@cohort_definition_ids != ''} ? {
AND cohort_definition_id IN (@cohort_definition_ids)
}
;
SELECT 1 AS attribute_definition_id,
'Length of observation in days' AS attribute_name
INTO @cohort_database_schema.@attribute_definition_table;
We substitute the arguments in this SQL with actual values, translate it to the right SQL dialect, and execute the SQL using SqlRender
:
library(SqlRender)
sql <- readSql("LengthOfObsCohortAttr.sql")
sql <- render(sql,
cdm_database_schema = cdmDatabaseSchema,
cohort_database_schema = cohortDatabaseSchema,
cohort_table = "rehospitalization",
cohort_attribute_table = "loo_cohort_attr",
attribute_definition_table = "loo_attr_def",
cohort_definition_ids = c(1,2))
sql <- translate(sql, targetDialect = connectionDetails$dbms)
connection <- connect(connectionDetails)
executeSql(connection, sql)
To use the constructed attributes as covariates in a predictive model, we need to create a covariateSettings
object:
looCovSet <- createCohortAttrCovariateSettings(attrDatabaseSchema = cohortDatabaseSchema,
cohortAttrTable = "loo_cohort_attr",
attrDefinitionTable = "loo_attr_def",
includeAttrIds = c(),
isBinary = FALSE,
missingMeansZero = FALSE)
Setting isBinary
and missingMeansZero
is only necessary if we want to aggregate the covariates. We can then use these settings to fetch the covariates
object:
covariates <- getDbCovariateData(connectionDetails = connectionDetails,
cdmDatabaseSchema = cdmDatabaseSchema,
cohortDatabaseSchema = cohortDatabaseSchema,
cohortTable = "rehospitalization",
cohortId = 1,
covariateSettings = looCovSet)
In this case we will have only one covariate for our predictive model, the length of observation. In most cases, we will want our custom covariates in addition to the default covariates. We can do this by creating a list of covariate settings:
covariateSettings <- createCovariateSettings(useDemographicsGender = TRUE,
useDemographicsAgeGroup = TRUE,
useDemographicsRace = TRUE,
useDemographicsEthnicity = TRUE,
useDemographicsIndexYear = TRUE,
useDemographicsIndexMonth = TRUE)
looCovSet <- createCohortAttrCovariateSettings(attrDatabaseSchema = cohortDatabaseSchema,
cohortAttrTable = "loo_cohort_attr",
attrDefinitionTable = "loo_attr_def",
includeAttrIds = c())
covariateSettingsList <- list(covariateSettings, looCovSet)
covariates <- getDbCovariateData(connectionDetails = connectionDetails,
cdmDatabaseSchema = cdmDatabaseSchema,
cohortDatabaseSchema = resultsDatabaseSchema,
cohortTable = "rehospitalization",
cohortId = 1,
covariateSettings = covariateSettingsList)
In this example both demographic covariates and our length of observation covariate will be generated and can be used in our predictive model.


Miscellaneous Options
-
broadcastdelay seconds
-
The broadcast and multicast modes require a special calibration to determine
the network delay between the local and remote servers. Ordinarily, this
is done automatically by the initial protocol exchanges between the local
and remote servers. In some cases, the calibration procedure may fail due
to network or server access controls, for example. This command specifies
the default delay to be used under these circumstances. Typically (for
Ethernet), a number between 0.003 and 0.007 seconds is appropriate. The
default when this command is not used is 0.004 seconds.
-
-
trap host_address [port port_number] [interface interface_address]
-
This command configures a trap receiver at the given host address and port
number for sending messages with the specified local interface address.
If the port number is unspecified. a value of 18447 is used. If the interface
address is not specified, the message is sent with a source address of
the local interface the message is sent through. Note that on a multihomed
host the interface used may vary from time to time with routing changes.
-
The trap receiver will generally log event messages and other information
from the server in a log file. While such monitor programs may also request
their own trap dynamically, configuring a trap receiver will ensure that
no messages are lost when the server is started.
-
-
setvar variable [default]
-
This command adds an additional system variable. These variables can be
used to distribute additional information such as the access policy. If
the variable of the form name = value is followed
by the default keyword, the variable will be listed as part of
the default system variables (ntpq rv command). These additional
variables serve informational purposes only. They are not related to the
protocol other that they can be listed. The known protocol variables will
always override any variables defined via the setvar mechanism.
There are three special variables that contain the names of all variable
of the same group. The sys_var_list holds the names of all system
variables. The peer_var_list holds the names of all peer variables
and the clock_var_list holds the names of the reference clock
variables.
-
-
logfile logfile
-
This command specifies the location of an alternate log file to be used
instead of the default system syslog facility.
-
-
logconfig configkeyword
-
This command controls the amount and type of output written to the system
syslog facility or the alternate logfile log file. By
default, all output is turned on. All configkeyword keywords
can be prefixed with =, + and -, where =
sets the syslogmask, + adds and - removes messages.
syslog messages can be controlled in four classes (, peer,
sys and sync). Within these classes four types of messages
can be controlled.
-
Informational messages (info) control configuration information.
Event messages (events) control logging of events (reachability,
synchronization, alarm conditions). Statistical output is controlled with
the statistics keyword. The final message group is the status
messages. This describes mainly the synchronizations status. Configuration
keywords are formed by concatenating the message class with the event class.
The allprefix can be used instead of a message class. A message
class may also be followed by the all keyword to enable/disable
all messages of the respective message class.
-
Thus, a minimal log configuration could look like this:
-
logconfig = syncstatus +sysevents
-
This would just list the synchronizations state of ntpd and the
major system events. For a simple reference server, the following minimum
message configuration could be useful:
-
logconfig = syncall +clockall
-
This configuration will list all clock information and synchronization
information. All other events and messages about peers, system events and
so on is suppressed.
Variables
Most variables used by the NTP protocol can be examined with the ntpdc
(mode 7 messages) and the ntpq (mode 6 messages). Currently, very
few variables can be modified via mode 6 messages. These variables are
either created with the setvar directive or the leap warning bits.
The leap warning bits can be set in the leapwarning variable up
to one month ahead. Both the leapwarning and leapindication
variables have a slightly different encoding than the usual leap bits interpretation:
-
00
-
The daemon passes the leap bits of its synchronization source (usual mode
of operation).
-
01/10
-
A leap second is added/deleted (operator forced leap second).
-
11
-
Leap information from the synchronizations source is ignored (thus LEAP_NOWARNING
is passed on).
David L. Mills (mills@udel.edu)


{% load staticfiles %}
create a tv plannr account
username
email
password
already have an account?
log in
home
save
create account
{% load staticfiles %}


Click here
Page 81-82 in Textbook
All files for a site are stored within the main project folder, a "root" folder.
This includes:
Note: File names should not include spaces or special characters. File names ARE case-sensitive.
In your Dev folder, you will have folders for each project. This Dev folder will therefore have multiple root folders.
All assets for each project will be in the main folder,
their respective root folder.
CSS = Cascading Style Sheets
CSS is a "style sheet language" that lets you style the elements on your page. It adds color, boldness, and layout to an otherwise plain and boring world of HTML.
CSS is embedded inside HTML, but it is not HTML itself.
Your CSS file is separate from your HTML file.
CSS is designed primarily to enable the *separation* of document content from document presentation
Login to your account at Codecademy. Complete the Introduction to CSS course by the end of this unit.
text
color
size
position
CSS consists of "style rules". Each style rule consists of a "selector" and "declarations" of property-value pairs:
selector { property: value; property: value; }
body {
color: yellow;
background-color: black;
}
background-color
width
or height
font-family
or font-size
border
blue;
200px;
"Helvetica";
or font-size: 16px;
2px
, solid
, black
; Parent-child relationship in CSS
body {
color: yellow;
background-color: green;
}
h1 {
color: blue;
background-color: black;
}
p {
color: red;
background-color: orange;
}
p.class {
color: turquoise;
background-color: beige;
}
Chapter 10 in the Textbook
selector {
property: value;
}
The selector is used to select which elements in the HTML page will be given the styles inside the curly braces { }.
id
class
p {
color: blue;
}
Selects all p
elements in the entire document.
/* CSS FILE */
#header {
color: blue;
}
Selects any element with the id
of “header
", e.g.

An element's id
is unique and can only be used once in your HTML.
Use "#
" in CSS to select the HTML element by its "id
" attribute value.
/* CSS FILE */
.warning {
color: red;
}
Selects any element with the class
name “warning
”, e.g.

Multiple elements can have the same class name.
Use ".
" in CSS to select the HTML element by its "class
" attribute value.
An element can have only 1 id
but multiple class
values, so you can take advantage of that for greater flexibility.
/* CSS FILE */
.intro {
background-color: blue;
}
.description {
color: red;
}

Hi. This is my paragraph.

This is my paragraph.

Hi

Practice here!
What colors are these three lines of HTML going to be?
Style rules for elements of the same class
apply to the elements no matter where they are on your site (e.g., buttons, branded link colors, list item bullets).

Hi

Bye

/* CSS FILE */
ul em {
color: yellow;
}
Selects any em
element that's a descendant of a ul
element.
The " " (space) is how you say "find a descendant."
Practice here!
/* CSS FILE */
#related-brands li {
color: gray;
}
Selects any li
element that is a descendant of any element with an id
that equals "related-brands
."

Rice Krispies

NutriGrain

/* CSS FILE */
li.special {
color: yellow;
}
Selects any li
element with a class
that equals "special
".

Rice Krispies

NutriGrain

Warning: If you place a space before the ".
", it'll look for descendants of li
with class
of "special
."
#header div.content form p em.required {
color: white;
}
Let's take a few moments to explore this selector!
Selects any em
element with a class
attribute value of "required
", that is a descendant of a p
element, that is a descendant of a form
element, that is a descendant of a div
element with a class
attribute value of "content", that is a descendant of an element with an id
attribute value of "header
".
A set of "pseudo-classes" can style anchor elements depending on their state.
a:link { /* unvisited link */
color: red;
}
a:visited { /* visited link */
color: blue;
}
a:hover { /* moused over link */
color: green;
}
a:active { /* current link */
color: purple;
}
a:focus { /* focused link */
color: purple;
}
Practice here!
A set of "pseudo-classes" can style anchor elements depending on their state.
a:hover a:hoverPseudo-class selectors can also apply to other html elements.
I'm a paragraph tag. Hover over me.
You can group selectors to apply the same style to all of the selectors by separating them with commas:
a:hover, a:active, a:focus {
background-color: yellow;
}
Generally:
id
is more specific than class
.class
is more specific than element.Example:
#a #b h1 { color: red; }
#a h1 { color: blue; }
What is the difference between these two selectors?
Here is a great article to refresh your skills.
Click here for a cheatsheet.
Check out this game to practice your skills!
It is possible to write CSS like this:
selector{property:values}selector{property:values}
But this is how we will write CSS at AnnieCannons:
selector {
property: values;
}
selector {
property: values;
}
Notice: space between "selector" and "{
", 2 spaces before property-value pair, space after "property:
", semi-colon (;
) after "values", followed by "}
", line between rules.
Some rules to follow when making id
and class
names:
class
or id
is part of something else. (e.g. "footer", "footer-copyright", and "footer-logo").Comments are ignored by the browser and are useful for documenting styles for readability or commenting out rules.
/* Comment here */
p {
margin: 1em; /* Comment here */
padding: 2em;
/* color: white; */
background-color: blue;
}
/*
multi-line
comment here
*/
Click here
Click here
Each property can have one or more values.
color: #333;
background-color: red;
font-family: 'Arial', sans-serif;
Note: sans-serif
is a category,
while 'Arial
' is the name of the font
The color
property changes text color:
blue
)#ff0000
)rgb(255, 0, 0)
)rgba(255, 0, 0, 0.5)
)
color: red; /* by name */
color: #ff0000; /* by hexadecimal color code value */
color: rgb(255, 0, 0); /* by rgb color code value */
color: rgba(255, 0, 0, 0.5); /* by rgb color code value with alpha channel */
The color
property is inherited, which means it will be applied to all descendant elements but can be overridden.
Practice here!
The "background-color
" property changes the background color. Besides the body
element, all elements default to a transparent background.
background-color: black;
background-color: #000000;
background-color: rgb(0,0,0);
body {
background-color: yellow;
}
table {
background-color: #FFCC00;
}
To find colors or color schemes for your webpage, you can use:
Chapter 11 in the Textbook
The "font-family
" property specifies the font family (or "font face") of the text. You can specify either a specific font name or a generic family name (serif
, sans-serif
, monospace
, cursive
).
font-family: "Times New Roman";
font-family: sans-serif;
A comma-separated list of font family values can be specified if you want the browser to prefer one but use the others as backup options.
font-family: "Times New Roman", serif;
font-family: "Arial", sans-serif;
font-family: Courier, monospace;
In addition to Google Fonts, you can browse for custom fonts for your webpages:
caniuse.com is a website where you can see which css properties your browser supports.
The "font-size
" property specifies the size of a font. It can be specified as a fixed size in various units, a percentage, or as a predefined keyword.
font-size: 1.5em;
font-size: 12px;
font-size: 100%;
font-size: larger;
font-size: 100vw;
The "em
" unit lets you set the size of the text relative to the text around it. This makes the page resize nicely in proportion if the user changes their default font-size. The default size is "1em
".
p {
font-size: 0.9em;
}
strong {
font-size: 1.5em;
}
Hello there!
Watch this!
The "px
" stands for pixels, which is also often used to size images and other elements.
Because pixels are finite or fixed, this unit of measurement does not work as well when printing or resizing.
h2 {
font-size: 17px;
}
These keywords can be used for imprecise sizing:xx-small
, x-small
, small
, medium
, large
, x-large
, xx-large
.
p.footnote {
font-size: small;
}
Two other keywords act similar to em
's in setting relative size: smaller
, larger
.
p.intro {
font-size: larger;
}
Percentage size, similar to em
, is relative. While em
is relative to a font's default size, %
is relative to the font size of its direct parent and can be used in conjunction with other units.
body {
font-size: 12px;
}
h1 {
font-size: 400%;
}
h1 a {
font-size: 50%;
}
vw
stands for viewport width. vh
stands for viewport height.
vw and vh allow you to dynamically set font size depending on screen size, the viewport.
Dynamic font sizing is especially helpful in responsive design.
h1 {
font-size: 3vw;
}
The "font-style" property specifies the font style of the text, either "normal" by default or "italic".
font-style: italic;
Italicized text.
The "font-weight" property specifies font thickness.
font-weight: bold;
font-weight: lighter;
font-weight: 800;
Bold text! Lighter text! Numbered font-weighted text!
A "shorthand" property in CSS lets you specify
multiple properties in one property, for conciseness.
Instead of specifying each "font-" property separately,
you can bundle them up in one "font" property.
table.geeky {
font-weight: bold;
font-style: italic;
font-size: 10px;
font-family: sans-serif;
}
Those four rules can be written as:
table.geeky {
font: italic bold 10px sans-serif;
}
line-height: 10px;
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis aliquam convallis
Click here for an example
text-align: center;
Centered text.
text-decoration: underline;
Underlined text
Chapter 12 in the Textbook
Where do I write and store my CSS?
How will my CSS connect to my HTML?
External CSS is when our CSS is defined in a separate file, and imported using the link
element. This is a best practice!
Linked stylesheet example:

<link rel="stylesheet" type="text/css" href="main.css">

Use Case: External CSS is a best practice when you can build a project from the ground up and structure its directory.
Internal CSS is CSS that is in the head of the HTML file. We would put the CSS in a style
tag inside the head
tag:

Use Case: Internal CSS is an alternative when working with platforms that have no access to an external CSS file and do allow access to the HTML head
.
Inline CSS is when CSS styles are assigned to individual HTML elements via the style
attribute:
<tag style="property1: value; property2: value;"> </tag>

Hello

Inline styles will override internal and external CSS.
Inline CSS, therefore, should be avoided as it increases maintenance costs and blurs the line between presentation and content.
Use Case: Platforms that have no access to external CSS or the HTML head
for internal CSS will permit inline CSS only.
All web layouts are accomplished with block elements. Designers use blocks, most often div
elements, to create rectangular areas into which all content fits.
div
Watch here.
Examples here.
display
propertyThere are two main types of elements in the CSS world: "inline
" and "block
".
A browser generally renders a separate line for each "block
" element in HTML.
On the contrary, "inline
" elements go from left to right on the same line.
See next slide for a visual.
A grouping element lets you style multiple elements as a whole. Examples are span
and div
.
span
creates an inline element.
 Hello World !
div
creates a block element.

Hello

World

 Hello World !

Examples:
input, a, img, br,
a few others...
p, h1, ul, li, table,
almost everything else...
Read and reference page 317 in the textbook.
Then try this display practice!
Instructions:
inline
, change its display to "block
."block
, change its display to "inline
" or "inline-block
."display
to be opposite of its default.Practice here!
Watch here
All elements are treated as boxes by the browser's rendering engine (either "inline
" or "block
" boxes).
A box consists of content, padding
, border
, and margin
:
Play here!
In a document, each element is represented as a rectangular box.
The goal of the rendering engine for these boxes in the document is to determine its:
color
, background
, border
)position
In CSS, each rectangular box is described using the
standard box model. This model describes the amount and kind of space taken up by an HTML element.
Each box has four edges:
margin
edgeborder
edgepadding
edgecontent
edgeCSS to define width on all browsers. See this.
body {
box-sizing: border-box;
}
Total width is how much horizontal space a block occupies. This includes the block’s content, border, and padding.
Designers have to account for width, padding and margin; using the box model makes these calculations easy.
The box model consists of these properties:
margin
border
padding
You can measure width in the following ways:
vw
)px
%
Height can be set automatically given the content of the element. However, you can also select the height using:
vh
)px
Note: don't use %
!
The margin
is a transparent area around the box.
So the background of the box does not apply to this area.
The margin
is a kind of "spacer" in that it separates the box from nearby elements.
15 pixels on ALL SIDES:
margin: 15px;
10px
on ONE SIDE ONLY:
margin-top: 10px;
DIFFERENT MARGIN VALUES
(e.g., 10px
on top, 5px
right, 3px
bottom, 20px
left)
Note: when using this method, think of a clock;
start at the top, and go clockwise.
margin: 10px 5px 3px 20px;
More on different margin values on MDN.
If the margin
is set to "auto
" on a box that has a set width, then the margin will take up as much space as possible on the left and right of the box.
A centered box:

Hi

/* CSS FILE */
div {
margin: auto;
width: 300px;
border: 1px solid red;
}
A flush-right box:

Hi

/* CSS FILE */
div {
margin-left: auto;
margin-right: 5px;
width: 300px;
border: 1px solid red;
}
Try it here!
The border
property styles the edge around the box and is specified as "thickness style color".
A solid red border:
border: 1px solid #ff0000;
A thick dotted black top border:
border-top: 4px dotted #000000;
2 different border styles:
border-top: 4px dotted #000000;
border-bottom: 1px solid #ff0000;
Border thickness can also be specified with border-width
property and can be different on each side (like margin).
10px
on all sides:
border-width: 10px;
10px
on top, 5px
right, 3px
bottom, 20px
left:
border-width: 10px 5px 3px 20px;
Border style can also be specified using the border-style
property.
border-style: dashed;
border-style: double;
border-style: groove;
border-style: outset;
border-style: inset;
border-style: ridge;
Border color can also be specified with border-color
property.
Green on all sides:
border-color: rgb(0, 240, 0);
White on top, black right, red bottom, green left:
border-color: #fff black #ff0000 #00ff00;
Try it here!
The padding
property specifies whitespace between the border and the content.
15px
on all sides:
padding: 15px;
10px
on top, 5px
right, 3px
bottom, 20px
left:
padding: 10px 5px 3px 20px;
10px
on top:
padding-top: 10px;
Chapter 13 in the Textbook
Get the asset here and build your site with a Kaushan Script title and Lato body text. Remember to set default font type if neither script can be displayed.
The position
property is used to specify a positioning scheme for an element. The default is "static
" which puts the element in the "normal" flow.
In normal flow, inline
boxes flow from left to right, wrapping to next line when needed.

In normal flow, block
boxes flow from top to bottom, making a new line after every box.

Greetings

Hola, novato

Hey, dude>!

Hola, novato
The "relative
" value will still put the element in the normal flow, but then offset it according to top
/left
/right
/bottom
properties.

Hello, hi!

div {
position: relative;
left: 80px;
top: 20px;
height: 100px;
background-color: blue;
}
Note: keep an eye on the blue box.
/*CSS FILE*/
div {
width: 100px;
height: 100px;
margin-bottom: 5px;
}
.box1 {
background-color: green;
}
.box2 {
background-color: red;
}
.box3 {
background-color: blue;
}
.box4 {
background-color: yellow;
}
Note: check the blue box's CSS.
/*CSS FILE*/
div {
width: 100px;
height: 100px;
margin-bottom: 5px;
}
.box1 {
background-color: green;
}
.box2 {
background-color: red;
}
.box3 {
background-color: blue;
position: relative;
left: 30px;
}
.box4 {
background-color: yellow;
}
Practice here!
The "absolute
" value will take the element
out of the normal flow
and position it in relation to the window
(or the closest non-static parent).

Up here

Down here

/* CSS FILE */
.top-button {
position: absolute;
top: 10px;
right: 10px;
background-color: lightblue;
}
.lower-button {
position: absolute;
bottom: 5px;
left: 60px;
background-color: green;
}
Note: keep your eye on the blue box.
Note: check the blue box's CSS.
/*CSS FILE*/
div {
width: 100px;
height: 100px;
margin-bottom: 5px;
}
.box1 {
background-color: green;
}
.box2 {
background-color: red;
}
.box3 {
background-color: blue;
position: absolute;
right: 30px
}
.box4 {
background-color: yellow;
}
Practice here!
A position
of fixed
will make an element in the browser window stay put as the user keeps scrolling.
nav {
position: fixed;
}
position:fixed
is often used for nav bars, news videos or video ads at the bottom right corner of a window, etc.
Check out more values for position
on MDN.
The z-index
property specifies the stack order of positioned elements, in case they overlap. The element with highest z-index goes on top.

 Bottom

 Top

.lower-index {
position: absolute;
bottom: 0px;
left: 60px;
background-color: red
}
.higher-index {
position: absolute;
bottom: 10px;
left: 60px;
background-color: green;
z-index: 2;
}
Practice here!
Go through at your own pace
Click here for Learn LayoutChapter 15 in the Textbook
CSS can be applied to the following:
(please select all that apply)
Please list in the correct order:
/* Please list the order here */
Please give an example of:
id
selectorclass
selectorid
and position selectorclass
selectorborder-color
is an example of a "shorthand" property.All of the following things are needed to add a Google font to a project EXCEPT:
Mix and Match the following:
Complete the following statement:
Every HTML element has a default display of
________ or ________.
What does NOT belong in the box model?
Unscramble this:
The default position of an HTML element is cttias.
True/False:
Otherwise, position can be fixed, sticky, relative or absolute.
Check it out in action here
Internet browsers have their own default styles. So, even if you did not write any CSS, the default style of the browser will apply when the content is displayed on the page.
Times New Roman font family | 16px font size | color palette
Different browsers may apply a small subset of these rules differently. So front-end developers need to be aware of 'cross-browser compliance' issues, which we may explore more fully in future lessons.
p
element? How do you select it in CSS?What is responsive design?
Prior to responsive web design, most web designers thought in terms of print design with fixed pixel-based units.
The goal was to make websites look exactly the same in every size browser, no matter how big or small the screen.
Responsive design discards these tenets about fixed-value layout. Instead, responsive design approaches layout in terms of ratios (relative size) or percentages (% size).
Think: em
!
Play here!
Media queries are CSS rules that apply CSS code only when certain conditions are met. These conditions are called media features.
In responsive web design, the media feature most commonly used is width
(e.g., minimum width [min-width
], maximum width [max-width
],) of a media type (e.g., screen
).
In responsive web design, a breakpoint is a width where the current layout no longer works and the layout breaks.
If the layout breaks, another media query must apply to adjust the layout to fit the new width.
Click here to see breakpoints in actionA media query consists of a media type (e.g., screen
) and an optional combination of media features (e.g., width
).
CSS rules inside the query (within the curly braces) will be applied only if the query is true.
You can always Google 'media query syntax'
@media <media types> and <media features> {
/* media-specific rules */
}
Modern mobile browsers support media queries which depend on the width
and/or orientation
:
Example: Targeting iPads using screen width
@media only screen
and (min-width : 768px)
and (max-width : 1024px) {
img {
width: 100%;
}
}
Media queries are now usually based on min-width
and max-width
based on window size, not device size.
@media screen and (max-width: 640px) {
#sidebar {
display: none;
}
}
@media (min-width: 768px) and (max-width: 979px) {
#sidebar {
width: 200px;
}
}
min-width
is most often used when building "mobile first."
Mobile first prioritizes a user's mobile online experience first, before considering wider screen sizes.
A developer is building mobile first when they develop the mobile version of a site first
before adding media queries for wider screens.
Why build mobile first?
Check out these stats.
It's also easier to build from small to big (mobile first)
than big to small (desktop first).
More on Mobile First Design
Since min-width
is a frequent property used in media queries when building mobile first,
all CSS styles outside of a media query will apply to what screen size? Yes! Mobile!
Therefore, we will only need media queries for the following breakpoints in screen sizes:
| Tablet |
|
|---|---|
| Laptop |
|
| Small Desktop |
|
| Large Desktop |
|
Note: Code in such a way that no breakpoints beyond 1440px are needed.
min-width
breakpoints in px
for media queries will most likely be similar to the previous slide's specifications.width
per HTML element, determine whether to use:
px
%
(fit to parent)vw
em
/* Example */
@media screen and (min-width: 1440px) {
#sidebar {
width: 20%;
}
}
Reference the MDN documentation
Watch the Responsive Design video review
Check the Responsive Design Checklist
Feel free to watch this Mobile First CSS video and follow/code along!
| Mobile | Tablet | Desktop |
|---|---|---|
Click on this link for image and design files.
What is a framework?
CSS frameworks are pre-prepared software code that allows for easier, more standards-compliant web design using the CSS language.
Most languages have frameworks that make our job as a developer easier.
The style rules are already written, all you have to do is add proper classes to you HTML!
A lovely review thanks to GDI
Click hereWhat does a CSS framework consist of?
Usually includes:
Enter Bootstrap! Bootstrap is a commonly used CSS framework that includes a grid system and easy-to-use CSS styling techniques.
A grid system lets you layout pages according to fractions of a grid (usually 12, 16, or 24 columns).
Bootstrap includes a powerful mobile-first grid system for building layouts of all shapes and sizes. It’s based on a 12-column layout.
Watch here! class="container"
for fixed width class="container-fluid"
for full width, which centers your site’s contents and helps align your grid content. class="row"
class="col"
class="col-sm-4"
in HTML and select .col-sm-4
in CSS..col-xs
), small (.col-sm
), medium (.col-md
), large (.col-lg
), and extra large (.col-xl
).Let's build this together!
One of three columns
Second of three columns
Third of three columns
Copy the instructions here
Flexbox makes aligning elements and centering them vertically and horizontally super easy!
Keeps you from feeling like this:
For the parent:
display: flex;
height
flex-direction
justify-content
align-items
flex-direction
has a default setting of "row
"flex-direction
sets the main axis along which its children align; the default main axis is horizontal.flex-direction: column;
on the parent to change the orientation of the children and set the main axis to be vertical.justify-content
has a default setting of "flex-start
"flex-start
flex-end
center
space-between
space-around
align-items
has a default setting of "flex-start
"flex-start
flex-end
center
For so much more......Click here
Make a responsive site based on the given designs and assets.
Make sure you use Bootstrap and Flexbox!
Click here
Thank you for your attention!


UPTIME(1) User Commands UPTIME(1) NAME uptime - Tell how long the system has been running. SYNOPSIS uptime [options] DESCRIPTION uptime gives a one line display of the following information. The cur‐ rent time, how long the system has been running, how many users are cur‐ rently logged on, and the system load averages for the past 1, 5, and 15 minutes. This is the same information contained in the header line displayed by w(1). System load averages is the average number of processes that are either in a runnable or uninterruptable state. A process in a runnable state is either using the CPU or waiting to use the CPU. A process in uninter‐ ruptable state is waiting for some I/O access, eg waiting for disk. The averages are taken over the three time intervals. Load averages are not normalized for the number of CPUs in a system, so a load average of 1 means a single CPU system is loaded all the time while on a 4 CPU system it means it was idle 75% of the time. OPTIONS -h, --help display this help text -V, --version display version information and exit FILES /var/run/utmp information about who is currently logged on /proc process information AUTHORS uptime was written by Larry Greenfield<EMAIL_ADDRESS>and Michael K. Johnson<EMAIL_ADDRESS>SEE ALSO ps(1), top(1), utmp(5), w(1) REPORTING BUGS Please send bug reports to<EMAIL_ADDRESS>procps-ng June 2011 UPTIME(1)


Home
Documentation
Khulke
chat
To resolve problems with participation and transparency
Login with Google Account
Logout


Lightning comprises of two major component: Lightning-Core and Lightning-Client. Restful communication between client and core is abstracted from the end user. End user employs lightning client to perform all operations. Lightning core hosts a bunch of RESTful services to support all client operations like request submission, result polling, config management, audit etc. For each operation, clients first resolve the most suitable core followed by the service call.
Lightning-Core is the URL execution engine. Prime Responsibilities of Core are as follows:
There can be multiple cores in the cluster. Adding more core machine is easy. Just add it to the seed list in the client builder. They can be swapped in and out any time during system is in use which gives the scalability to the system.
Lighting-Client is used by end user to send execution request, poll result, make system config changes, etc. It is used to submit the request to the core and poll the response back.It can also manage the multiple instances of core.


I build, design, think, play and fiddle. At the moment I am a freelance designer and developer working on the Squarespace platform. I am pursuing a position as a designer/developer to help hone and advance not only my current set of skills but to also learn what I don't know, grow as a developer from seasoned professionals and help be a part of something creative and bold.
I enjoy projects that award me hands on work; that require problem-solving. But I also love structure and planning and have a hyper eye for details. As a child I would build exhaustingly detailed dioramas and miniatures. As it goes "the devil is in the details" and I'm going to make sure that last bracket or semi-colon or pixel is perfect.
Although I'm by my lonesome at the moment, I do favor working with a team. What you learn, you learn faster and more of and the results are more impressive. I think that is why I love playing music. Collaboration will create something far better than a single mind ever could.


Async::Notification
A synchronization primitive, which allows fibers to wait until a notification is received. Does not block the task which signals the notification. Waiting tasks are resumed on next iteration of the reactor.
Definitions
def signal(value = nil, task: Task.current)
Signal to a given task that it should resume operations.
Implementation
def signal(value = nil, task: Task.current)
return if @waiting.empty?
task.reactor << Signal.new(@waiting, value)
@waiting = []
return nil
end


#include <DSIGKeyInfoX509.hpp>
Inheritance diagram for DSIGKeyInfoX509:
Class for holding information on a X509Data node as well as setting such a node in a signature.
Public Types | |
| typedef std::vector< X509Holder * > | X509ListType |
| typedef size_t | size_type |
Public Member Functions | |
Constructors and Destructors | |
| DSIGKeyInfoX509 (const XSECEnv *env, XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *X509Data) | |
| Constructor used when XML structures exist. | |
| DSIGKeyInfoX509 (const XSECEnv *env) | |
| Constructor called when building XML structures. | |
| virtual | ~DSIGKeyInfoX509 () |
| Destructor. | |
Load function and get methods | |
| virtual void | load () |
| Function called to load an XML structure. | |
| const XMLCh * | getX509SubjectName (void) |
| Get the name of the certificate. | |
| const XMLCh * | getKeyName (void) |
| Get the name of the certificate (interface function). | |
| const XMLCh * | getX509IssuerName (void) |
| Get the IssuerSerialName. | |
| const XMLCh * | getX509IssuerSerialNumber (void) |
| Get the IsserSerialNumber. | |
| const XMLCh * | getX509CRL (void) |
| Get any associated CRL. | |
| const XMLCh * | getX509SKI (void) |
| Get the SKI value (if set). | |
| const XMLCh * | getRawRetrievalURI (void) |
| Return the raw Retrieval method to find this certificate. | |
| int | getCertificateListSize (void) |
| Find the number of certificates held. | |
| const XMLCh * | getCertificateItem (int item) |
| Get the DER encoded certificate pointed to in the list. | |
| XSECCryptoX509 * | getCertificateCryptoItem (int item) |
| Get the Crypto Interface X509 structure version of the certificate. | |
| virtual keyInfoType | getKeyInfoType (void) |
| Interface function to find the type of this KeyInfo. | |
Create and Set functions | |
| XERCES_CPP_NAMESPACE_QUALIFIER DOMElement * | createBlankX509Data (void) |
| Create a new X509 data element. | |
| void | setX509SubjectName (const XMLCh *name) |
| Set the X509SubjectName element in the KeyInfo element. | |
| void | setX509IssuerSerial (const XMLCh *name, const XMLCh *serial) |
| Set the IssuerSerial element. | |
| void | setX509CRL (const XMLCh *crl) |
| Set the CRL element. | |
| void | setX509SKI (const XMLCh *ski) |
| Set the SKI element. | |
| void | setRawRetrievalURI (const XMLCh *uri) |
| set the retrieval URI | |
| void | appendX509Certificate (const XMLCh *base64Certificate) |
| Add a certificate. | |
Classes | |
| struct | X509Holder |
|
|
|
|
|
|
|
|
Constructor used when XML structures exist. Constructor called by interface class when loading an X509Data element from DOM nodes.
|
|
|
Constructor called when building XML structures. Constructor called by interface class when an XML structure is being built by a user calling the API
|
|
|
Destructor.
|
|
|
Add a certificate. Append an X509Certificate element to the list of certificates stored at the end of this KeyInfo element.
|
|
|
Create a new X509 data element. Create a blank (empty) X509Data element that can then be used by the application to add X509Data elements.
|
|
|
Get the Crypto Interface X509 structure version of the certificate. Use the index to find the required certificate and return a pointer to the XSECCryptoX509 cert
|
|
|
Get the DER encoded certificate pointed to in the list. Use the index to find the required certificate and return a pointer to the buffer containing the encoded certificate.
|
|
|
Find the number of certificates held. Find the number of certificates held in the X509Data structures.
|
|
|
Interface function to find the type of this KeyInfo.
Implements DSIGKeyInfo. |
|
|
Get the name of the certificate (interface function). Get the name stored in the X509SubjectName element (if it exists).
Implements DSIGKeyInfo. |
|
|
Return the raw Retrieval method to find this certificate. In some cases, the KeyInfo RetrievalMethod references a raw certificate In such cases, the library simply creates a KeyInfoX509 object and sets this string to allow others to find the certificate |
|
|
Get any associated CRL. Return the string containing the base64 encoded CRL that was held in the X509CRL node
|
|
|
Get the IssuerSerialName. Get the name of the Issuer (stored in the X509IssuerSerial element).
|
|
|
Get the IsserSerialNumber. Get the serial number of the certificate of the issuer of the signing certificate.
|
|
|
Get the SKI value (if set). The SKI (Subject Key Identifier) can be used to reference a required certificate. If this was set in the KeyInfo element, this function will return the value
|
|
|
Get the name of the certificate. Get the name stored in the X509SubjectName element (if it exists).
|
|
|
Function called to load an XML structure. Function called by intercace class to load an X509Data structure from DOMNodes. Implements DSIGKeyInfo. |
|
|
set the retrieval URI Generally to be used by internal library processes only. This sets the retrieval URI - but does _not_ manipulate the DOM in any way.
|
|
|
Set the CRL element. If an X509CRL exists, replace the value with that provided, otherwise create a new element and set the value appropriately.
|
|
|
Set the IssuerSerial element. If an X509IssuerSerial exists, replace the values with those provided, otherwise create a new element and set the values appropriately.
|
|
|
Set the SKI element. The SKI node provides a reference to the Subject Key Identifier of a certificate. This function takes a base64 encoded ski and sets it into the appropriate node
|
|
|
Set the X509SubjectName element in the KeyInfo element. If a X509SubjectName element exists, replace the text with the provided text. Otherwise create the element and set the text.
|


Priest Shegfield:
You do not have a letter of recommendation from them all, however.
Go to Floran Village and bring me letters of recommendation from Pano, Sonin and Alex.
Ask
Alex
for more information.


Software Engineer working for Zühlke since 2017
The Romans were active in trade and commerce, and from the time of learning to write they needed a way to indicate numbers.
The system they developed lasted many centuries, and still sees some specialized use today. For example the BBC uses Roman numerals to date their programmes.
| Symbol | I | V | X | L | C | D | M |
|---|---|---|---|---|---|---|---|
| Value | 1 | 5 | 10 | 50 | 100 | 500 | 1,000 |