The hackathon scene has done more than just deprive me of sleep. Through the sleep deprivation, I've met a number of interesting people, gained familiarity with a wide variety of technology, and formed permanent memories. This website aims to document these unique experiences, both at hackathons and at home.
Here are some selected images from my personal projects. Click on an image to be taken to the relevant repository. I haven't published the dynamic programming code, because it is a recurring competition at Cal.
Assisted a nuero-radiologist in order to build a model of brain temperature based on DTI data and also worked in data entry for a longitudinal study on Parkinson’s disease. Part of the training included HIPAA compliance and a discussion of ethical processing of patient data.
Led FRC team 1168 to its first championship banner in its 14 years by writing software for tele-operated and autonomous navigation and supervising team logistics, including starting our first-ever off-season training sessions.
Within 24 hours, learned fundamentals of Python Flask and web architecture to build a Web API, which allowed clients to verify an RSA signature against a public key. Concurrently, assisted on a pair of projects. One used OpenCV and a convolutional neural network to automatically output HTML from a website sketch, and one counted cells from a microscope image.
Collaborated on an interactive phone-bot using Twillio's natural language processing API and on a website to improve our response to natural disasters.
Implemented a dynamic programming solution which would use Bellman’s equation to create a near-optimal strategy to the given non-deterministic game of imperfect information. The bot ranked 11th against a competitive group of 124 others.
Wrote a pure Java (no libraries) implementation of a minimax AI, which would play Chess and other deterministic games (Reversi, tic-tac-toe, etc...) by solving out a game tree out to a finite depth.
Wrote a fully-functional interpreter for a “Turing-Complete” language of my own design, and co-wrote a set of packaged development tools to allow users to work with this language and other “esoteric languages”.
Wrote a pure Java implementation of a 3D rendering engine where the camera has all six necessary degrees of freedom along with code to provide varying scenery, including procedurally generated terrain (perlin noise).
Within a 36 hour Hackathon (PennApps), co-built a system to allow a user to control a Spotify Playlist with a number of gestures, and built an LED Glove to sync to the beat of the song being played.
GPA: 4.40 (Class Rank: 1/120)
I enjoy puzzles of all kinds, and I've explored this in a number of different ways ranging from Game-Theory for board-games to solving shortest-code challenges ("code-golfing") on this StackExchange, and I've spent a number of different Friday afternoons doing recreational mathematics.
After a long day of tiring myself out trying to solve these problems, I have two ways to "unwind". The first way is watching/reading Dystopian and Sci-Fi fiction, but the second is distance running.
In the tech field, we always strive to leverage existing platforms and build upon them. In this light, I think its important to acknowledge these resources once we use them. This site was built using Bootstrap. In particular, I adapted this template. Both the template and the Bootstrap framework are licensed under an MIT License.


Recommended customization (only Chrome)
If you don't need AWS GovCloud partition or AWS China partition, you can restrict access to your site from managing extensions.
- Open Extensions page.
- Click Details button of this extension.
- See Site access.
- Set Automatically allow access on the following sites off.
- Set https://*.console.aws.amazon.com/* and https://phd.aws.amazon.com/* on.


PSALMS 72
A psalm written by Solomon.
1 O God, enable the king whom you appointed in Israel to rule justly.
Show him how to judge matters fairly
2 so that he may judge your people fairly
and that he may govern your oppressed people justly.
3 I desire that all over the country—even on the hills and mountains —
people will live peacefully and righteously.
4 Help your king to defend the poor people
and to rescue needy people and to defeat those who oppress them.
5 I desire that your king may live as long as the sun shines,
as long as the moon shines, forever.
6 I desire that his rule may be enjoyed by the people
as they enjoy rain on the growing crops,
as they enjoy the showers that fall on the land.
7 I hope that people may live righteously during the years that he rules
and that the people may live peacefully and prosperously as long as the moon shines.
8 I hope that the king of Israel may rule the people
in all the area from one sea in the east to another in the west
and from the Euphrates River to the most remote places on earth.
9 I hope that those who live in the wilderness may bow down before him
and that his enemies may throw themselves on the ground in submission to our king.
10 I hope that the king of the land of Tarshish and the kings of the islands in the sea may pay taxes to the king of Israel.
I hope that the king of Sheba to the south and the king of Seba to the southwest may bring him gifts.
11 I hope that all the other kings in the world may bow before the king of Israel
and that people of all nations may serve our king.
12 He rescues poor people when they cry out for help,
and he helps those who are needy and those who have no one to help them.
13 He pities those who are weak and needy;
he saves the people's lives.
14 Our king rescues people from being oppressed and from being treated cruelly
because their lives are precious to our king.
15 I hope that our king may live a long time!
I hope that he may be given gold from Sheba.
I desire that people may always pray for our king
and praise him all the time, every day.
16 I hope that the fields may produce plenty of grain everywhere, even on the tops of the hills in the land where he rules,
like the grain that grows on the hills in Lebanon.
I hope that the cities in Israel will be as full of people
as the fields are full of grass.
17 I desire that the name of the king may never be forgotten.
I hope that people may remember him as long as the sun shines.
I hope that all people will praise Yahweh, the God of Israel,
just as he has blessed the king of Israel.
18 Praise Yahweh, the God whom we Israelites worship;
he is the only one who does wonderful things.
19 Praise him forever!
I desire that his glory may fill the whole world!
Amen! May it be so!
20 This is the end of the prayers written by David, son of Jesse.


| Package | com.sibirjak.jakute.framework.roles |
| Class | public class JCSS_ComponentRoleManager |
| Inheritance | JCSS_ComponentRoleManager JCSS_RoleManager |
| Method | Defined by | ||
|---|---|---|---|
|
JCSS_ComponentRoleManager(styleManager:JCSS_ComponentStyleManager)
| JCSS_ComponentRoleManager | ||
|
Since ancestor roles for a certain tree node id can not be multiple,
it is not possible to have 2 roles with the same treeNode and the same parent.
| JCSS_ComponentRoleManager | ||
|
foreachAncestorComponentStyleManager(callback:Function, styleRuleTreeNode:JCSS_StyleRuleTreeNode):void
Note, the ancestor for the _styleRuleTree of a component is the component itself.
| JCSS_ComponentRoleManager | ||
|
foreachClassRelatedChildComponentStyleManager(callback:Function):void
| JCSS_ComponentRoleManager | ||
|
foreachDescendantStyleRuleTreeNode(callback:Function, componentKey:String):void
| JCSS_RoleManager | ||
|
foreachStyleRule(callback:Function):void
| JCSS_ComponentRoleManager | ||
|
hasComponentKey(key:String):Boolean
| JCSS_ComponentRoleManager | ||
|
initRoles():void
| JCSS_ComponentRoleManager | ||
|
notifyCSSClassChangesNext():void
| JCSS_ComponentRoleManager | ||
|
setRolesForRuntimeAddedStyleRule(styleRule:JCSS_StyleRule):void
| JCSS_RoleManager | ||
|
unregisterFromTreeNodes():void
| JCSS_ComponentRoleManager |
| Method | Defined by | ||
|---|---|---|---|
|
addDescendantNode(componentKey:String, descendantNode:JCSS_StyleRuleTreeNode):void
| JCSS_RoleManager | ||
|
reset():void
| JCSS_ComponentRoleManager | ||
|
setDescendantNodes(styleRuleTreeNode:JCSS_StyleRuleTreeNode):void
| JCSS_RoleManager |
| JCSS_ComponentRoleManager | () | constructor |
public function JCSS_ComponentRoleManager(styleManager:JCSS_ComponentStyleManager)
Parameters
styleManager:JCSS_ComponentStyleManager |
| addAncestor | () | method |
public function addAncestor(parentStyleManager:JCSS_StyleManager, styleRuleTreeNode:JCSS_StyleRuleTreeNode):void
Since ancestor roles for a certain tree node id can not be multiple, it is not possible to have 2 roles with the same treeNode and the same parent. However, we may have 2 roles with the same treeNode but a different parent. Example Rule: A B Display-List: A1 A2 B C Descendant roles of B: A B (A1), A B (A2) Ancestor roles of B: C Descendant Roles of C: B C (B)
ParametersparentStyleManager:JCSS_StyleManager |
|
styleRuleTreeNode:JCSS_StyleRuleTreeNode |
| foreachAncestorComponentStyleManager | () | method |
public function foreachAncestorComponentStyleManager(callback:Function, styleRuleTreeNode:JCSS_StyleRuleTreeNode):void
Note, the ancestor for the _styleRuleTree of a component is the component itself.
Parameterscallback:Function |
|
styleRuleTreeNode:JCSS_StyleRuleTreeNode |
| foreachClassRelatedChildComponentStyleManager | () | method |
public function foreachClassRelatedChildComponentStyleManager(callback:Function):void
Parameters
callback:Function |
| foreachStyleRule | () | method |
public function foreachStyleRule(callback:Function):void
Parameters
callback:Function |
| hasComponentKey | () | method |
public function hasComponentKey(key:String):Boolean
Parameters
key:String |
Boolean |
| initRoles | () | method |
public override function initRoles():void
| notifyCSSClassChangesNext | () | method |
public function notifyCSSClassChangesNext():void
| reset | () | method |
protected override function reset():void
| unregisterFromTreeNodes | () | method |
public function unregisterFromTreeNodes():void


The design / requirements of your experiment itself can obviously influence what the minimum computer specification should be to provide good timing / performance.
The dual process design when running using psychopy.iohub also influences the minimum suggested specifications as follows:
Please see the Recommended hardware section for further information that applies to PsychoPy in general.
When using psychopy.iohub, the following constrains should be noted:
When running PsychoPy using the macOS or Windows standalone distribution, all the necessary python package dependencies have already been installed, so the rest of this section can be skipped.
Note
Hardware specific software may need to be installed depending on the device being used. See the documentation page for the specific device hardware in question for further details.
If psychopy.iohub is being manually installed, first ensure the python packages listed in the Dependencies section of the manual are installed.
psychopy.iohub requires the following extra dependencies to be installed:
- psutil (version 1.2 +) A cross-platform process and system utilities module for Python.
- msgpack It’s like JSON. but fast and small.
- greenlet The greenlet package is a spin-off of Stackless, a version of CPython that supports micro-threads called “tasklets”.
- gevent (version 1.0 or greater)** A coroutine-based Python networking library.
- numexpr Fast numerical array expression evaluator for Python and NumPy.
- pytables PyTables is a package for managing hierarchical datasets.
- pyYAML PyYAML is a YAML parser and emitter for Python.


About Me
I have lived in the state of Washington for the past 8 years. Before that I grew up in Dayton, OH,
and
spent
some time in
Las Vegas while attending University of Nevada Las Vegas. I currently live in West Seattle with my
wife
Lindsay and my dog
Toby. I really enjoy making models, watching/playing baskeball, and hiking with my wife and dog.
Since
moving to Washington
I have had jobs as a finish carpenter, CAD designer, and most recently facilities manager.
Coding has always intrigured me. I had spent some time in the past playing around on codecademy and
really
enjoyed it. After
I saw this class being offered I was really excited to give it a shot. I have really enjoyed the
class
so
far, and cant wait
to continue learning. I am really excited to see what the future may hold!


Newly renovated creative office space and live-work units in Silverlake, walking distance to Sunset junction.
About HyperionThe popular Sunset Junction including Intelligentsia Coffee in Silver Lake is pictured on Sunset Blvd. Silver Lake is a neighborhood in the central region of Los Angeles, built around a city reservoir which gives the district its name.
Read MoreFront building with 1,100 SF of dedicated office space, including three private offices, waiting room, kitchen, and restroom. Three live-work units in the 1,200 SF back building.
Modern minimalist, 10' high ceilings, stained concrete floors, recycled wood
High speed internet, wifi, sound-proofing, fully air conditioned, new appliances, secured access, handicap access.


Against Squall Odds The Perfect Storm
By Ross Anthony
In a small Massachusetts fishing village, the season comes to a close smack dab in the middle of Sword-boat Captain Billy Tyne's slump. Again, his crew returns from the sea with a pittance of a catch, leaving them all with a pain in the pocket book. Taking the hit personally, Clooney (the Skipper) decides to sail the ship out one more time after only a day and half's stay in hopes of restocking his fish bins and confidence. The fishermen try to balance their lives on land with the steep ocean swells. First mate Wahlberg puts it this way, "I got a woman I can't stand to be two feet away from. Then again, I love to fish." Captain George knows the quandary, "Son, you got a problem."
Slow going like the fish-catching, the first half of the film is as bland as the second half is exciting. We must first be introduced to our crew and their loved ones (and rivals) on land before we go to sea. The perfect storm doesn't even begin to brew until the halfway mark at which point the crew must decide to venture into the bowels of hell or safely wait it out while their valuable catch spoils. Of course, they go for it.
 Though digitally assisted, this is one "in your face" hurricane. Huge waves, thick soot-filled clouds, winds with the force of an anchor slung from a chain. Clooney and Wahlberg slide all over this water-engorged deck as the sea comes at them from every direction. The team's turmoil is integrated with a battered 24 foot sailboat's tumult and a coast guard helicopter rescue team as they brave the skies of bullet rain. This high intensity action sequence will have you clutching the arms of your seat, or the arms of the person seated next to you.
The story itself has many of the elements of the disaster film formula: the waiting loved ones, the feuding crewmates, the slick newscaster tracking the story. The script offers standard dialogue, just to tell the story, nothing much to chew on. So the weaker actors don't get any help from the writers. The most interesting character drama comprises a couple of chips shouldered by two feuding fishermen. Reilly and Fichtner have the acting power to back up the animosity. Despite good performance by Clooney and Wahlberg, these rivaling crewmen give the film it's strongest character driven drama.
Quite slow from the gate to half, where it rushes like a waterfall to the near end, it's a stirring ride, but not a must see film.
The Perfect Storm. Copyright © 2000. Starring George Clooney, Mark Wahlberg, Diane Lane, William Fichtner, Karen Allen, Allen Payne, Bob Gunton, Mary Elizabeth Mastrantonio and John C. Reilly. Directed by Wolgang Petersen. Written by William D. Wittliff and Bo Goldman. (Based on a true story) Produced by Wolgang Petersen, Paula Weinstein, Gail Katz at Warner Bros(C)2000. Rated R.
Grade..........................B+
-- Copyright © 2000. Ross Anthony, currently based in Los Angeles, has scripted and shot documentaries, music videos, and shorts in 35 countries across North America, Europe, Africa and Asia. For more reviews visit: http://RossAnthony.com
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


To help assure on-time delivery during the busy holiday season, please place your order at least 2 to 3 days prior to the following major holidays: Thanksgiving Day, Christmas Day, New Year's, Valentine's Day, Easter, Administrative Professionals Week, Mother's Day, Memorial Day, Father's Day, Independence Day and Labor Day.
Offering a military discount of 15% off
cash and carry and local deliveries.
Thank you for your service


GEPlugin Interface Reference
List of all members.
Detailed Description
The
GEPlugin is the Google Earth Plug-in's main object, and this is the object that is returned to the JavaScript application when you first create a plug-in instance.
GEPlugin provides factory methods for ructing other objects (placemarks, and so on), and is also used to retrieve the root document objects.
Member Function Documentation
Parse a string of KML and return a handle to the root of the KML object structure that was created.
Creates a placemark on the globe. A Placemark is a feature with associated Geometry. A Placemark with a Point has an icon associated with it that marks a point on the Earth in the 3D viewer. (In the Google Earth 3D viewer, a Point Placemark is the only object you can click or roll over. Other Geometry objects do not have an icon in the 3D viewer. To allow the user to click in the 3D viewer, you would need to create a MultiGeometry object that contains both a Point and the other Geometry object.)
- Parameters:
-
| KmlPoint GEPlugin.createPoint |
( |
string |
id |
) |
|
Creates a point on the globe. Specifies the geographic location defined by longitude, latitude, and (optional) altitude.
- Parameters:
-
Creates a line string on Google Earth.
- Parameters:
-
| id | location of the new string. |
| KmlFolder GEPlugin.createFolder |
( |
string |
id |
) |
|
Creates a folder. A KMLFolder is used to arrange other features hierarchically (Folders, Placemarks, NetworkLinks, or Overlays). A feature is visible only if it and all its ancestors are visible.
- Parameters:
-
| KmlLod GEPlugin.createLod |
( |
string |
id |
) |
|
Creates level of detail (LOD). LOD describes the size of the projected region on the screen that is required in order for the region to be considered active. Also specifies the size of the pixel ramp used for fading in (from transparent to opaque) and fading out (from opaque to transparent).
- Parameters:
-
Creates a LatLonBox, a bounding box that describes an area of interest defined by geographic coordinates and altitudes.
- Parameters:
-
| id | ID of the new LatLonBox |
Creates a LatLonAltBox, a bounding box that describes an area of interest defined by geographic coordinates and altitudes.
- Parameters:
-
| id | ID of the new LatLonAltBox |
Creates a Document. A Document is a container for features and styles.
- Parameters:
-
| id | ID of the new KML document. |
| KmlRegion GEPlugin.createRegion |
( |
string |
id |
) |
|
Creates a Region in Google Earth. A Region contains a bounding box that describes an area of interest defined by geographic coordinates and altitudes.
- Parameters:
-
| id | ID of the new KML region. |
Specifies the exact coordinates of the Model's origin in latitude, longitude, and altitude. Latitude and longitude measurements are standard lat-lon projection with WGS84 datum. Altitude is distance above the earth's surface, in meters, and is interpreted according to altitudeMode.
- Parameters:
-
| id | ID of the new KML location. |
Sets the rotation of a 3D model's coordinate system to position the object in Google Earth.
- Parameters:
-
| id | ID of the new KMLOrientation. |
| KmlScale GEPlugin.createScale |
( |
string |
id |
) |
|
Sets the scale of a model along the x, y, and z axes in the model's coordinate space.
- Parameters:
-
| KmlModel GEPlugin.createModel |
( |
string |
id |
) |
|
Creates a model. A model is a 3D object described in a COLLADA file. COLLADA files have a .dae file extension. Models are created in their own coordinate space and then located, positioned, and scaled in Google Earth.
- Parameters:
-
| KmlStyle GEPlugin.createStyle |
( |
string |
id |
) |
|
A Style defines an addressable style group that can be referenced by StyleMaps and features.
- Parameters:
-
| id | ID of the new KMLStyle object. |
Creates a LinearRing. A LinearRing defines a closed line string, typically the outer boundary of a Polygon. Optionally, a LinearRing can also be used as the inner boundary of a Polygon to create holes in the Polygon.
- Parameters:
-
Creates a Polygon. A Polygon is defined by an outer boundary and 0 or more inner boundaries.
- Parameters:
-
| id | ID of the new Polygon. |
| KmlIcon GEPlugin.createIcon |
( |
string |
id |
) |
|
Creates an Icon. An icon defines an image associated with an Icon style or overlay.
- Parameters:
-
| KmlLink GEPlugin.createLink |
( |
string |
id |
) |
|
Creates a Link. A Link specifies the location of KML files fetched by network links, image files used in any overlay, or model files used with the Model object.
- Parameters:
-
Creates a GroundOverlay. A GroundOverlay draws an image overlay draped onto the terrain.
- Parameters:
-
Creates a NetworkLink. A NetworkLink references a KML file or KMZ archive on a local or remote network.
- Parameters:
-
Creates a ScreenOverlay. A ScreenOverlay draws an image overlay fixed to the screen.
- Parameters:
-
Creates a container for one or more geometry primitives associated with the same feature.
- Parameters:
-
Creates a StyleMap. A StyleMap maps between two different icon styles. Typically, a StyleMap is used to provide separate normal and highlighted styles for a Placemark, so that the highlighted version appears when the user mouses over the icon in Google Earth.
| KmlLookAt GEPlugin.createLookAt |
( |
string |
id |
) |
|
Creates a new LookAt. A LookAt element positions the camera view in relation to an object that is being viewed.
| KmlCamera GEPlugin.createCamera |
( |
string |
id |
) |
|
Creates a new Camera. This element positions the camera relative to the Earth's surface and defines the view direction.
Creates a Feature balloon.
- Parameters:
-
Creates an HTML string balloon.
- Parameters:
-
Creates an Html Div Balloon.
- Parameters:
-
Returns the currently active balloon, or null.
Sets the given balloon as the active balloon, replacing any existing active balloon. If the given feature is visible, then the balloon is displayed. Otherwise, the balloon is hidden.
If the argument is null, then any existing active balloon will be hidden.
| string GEPlugin.getEarthVersion |
( |
|
) |
|
Used for debugging purposes; if this value is not equal to the value returned by getPluginVersion then there is a misconfiguration on the end user's system. This check is automatically done during plugin instantiation.
| string GEPlugin.getPluginVersion |
( |
|
) |
|
The version of the Google Earth Plug-in installed on the end user's machine.
| string GEPlugin.getApiVersion |
( |
|
) |
|
The version of the JavaScript API that the Google Earth Plug-in installed on the end user's machine is capable of interfacing with.
The options used to manipulate the behavior of the Google Earth plugin.
Controls the window options.
Controls the globe behavior.
| GESun GEPlugin.getSun |
( |
|
) |
|
Displays the dawn to dusk views.
Controls built-in layer behavior.
Controls the plugin viewport.
Controls the navigation controls on the globe.
The top-level features currently in the Earth object.
Exposes functionality for interacting with KML tours.
Exposes functionality for interacting with photo overlays.
| float GEPlugin.getStreamingPercent |
( |
|
) |
|
Returns a number between 0 and 100 (inclusive) that indicates the progress of the streaming of imagery for the current view.
A value of 100 means that the imagery is completely streamed in.
| void GEPlugin.frameend |
( |
|
) |
|
Event fired when Earth has finished rendering the viewport. This event will be called many times in succession when the viewport is changing. Add a listener for this event and make incremental changes to the viewport for smooth animation.
| void GEPlugin.balloonclose |
( |
|
) |
|
Event fired when the current balloon is closed.
Member Data Documentation
Specifies that altitudes are at ground level. For Ground overlays, this means that the image will be draped over the terrain.
Specifies that altitudes are to be interpreted as meters above or below ground level (i.e. the elevation of the terrain at the location).
Specifies that altitudes are to be interpreted as meters above or below sea level, regardless of the actual elevation of the terrain beneath the object. For example, if you set the altitude of an object to 10 meters with an absolute altitude mode, the object will appear to be at ground level if the terrain beneath is also 10 meters above sea level. If the terrain is 3 meters above sea level, the object will appear elevated above the terrain by 7 meters. If, on the other hand, the terrain is 15 meters above sea level, the object may be completely invisible.
Specifies that altitudes are at sea floor level.
Specifies that altitudes are to be interpreted as meters above sea floor (i.e. the elevation of the sea floor at the location).
Refresh when the file is loaded and whenever the Link parameters change. This refresh mode is the default.
Refresh every n seconds (specified in refreshInterval).
Refresh when the expiration time is reached. If a fetched file has a NetworkLinkControl, the expires time takes precedence over expiration times specified in HTTP headers. If no expires time is specified, the HTTP max-age header is used (if present). If max-age is not present, the Expires HTTP header is used (if present).
Ignore changes in the view. Also ignore viewFormat parameters, if any. This view refresh mode is the default.
Refresh n seconds after movement stops, where n is specified in viewRefreshTime.
Refresh only when the feature's Region becomes active.
Screen coordinates are to be interpreted as a fraction of an item, like an image or Google Earth window.
Screen coordinates are to be interpreted as pixels from the left or bottom edge.
Screen coordinates are to be interpreted as pixels from the top or right edge.
Apply no color mode effect, i.e. use the base color as is.
Apply a random linear scale to the base color. See the KML <colorMode> documentation for more details.
Inherit the color mode from ancestor styles.
The Earth map type, used with GEOptions' setMapType
The Sky map type, used with GEOptions' setMapType
Hide the navigation control.
Show the navigation control always.
Automatically show or hide the navigation control depending on user interaction.
Specifies that fly-to should happen immediately, without a smooth transition.
The Layer ID of the terrain layer. Use as an argument to getLayerById() or enableLayerById().
The Layer ID of the roads layer. Use as an argument to getLayerById() or enableLayerById().
The Layer ID of the photorealistic buildings layer. Use as an argument to getLayerById() or enableLayerById().
The Layer ID of the low resolution (gray) buildings layer. Use as an argument to getLayerById() or enableLayerById(). Note that as photorealistic buildings continue to be created and added to the LAYER_BUILDINGS layer, the low-resolution version of those buildings will be removed from this layer. This layer will therefore change over time.
The Layer ID of the borders layer. Use as an argument to getLayerById() or enableLayerById().
When using the GEView.hitTest method, this mode samples the globe (the earth's sphere at altitude 0, without terrain or buildings).
When using the GEView.hitTest method, this mode samples the earth's terrain (the ground surface, including variations in altitude).
The feature's visibility is tied to its list item's checkbox state.
When specified for a folder, document or network link, prevents all items from being made visible at once—that is, the user can turn all children off but cannot turn them all on at the same time. This setting is useful for containers or network links containing large amounts of data.
Use a normal checkbox for visibility but do not display children in a list view. The item's checkbox should allows the user to toggle visibility of the child objects in the viewport.
When specified for a container (a folder or a document), only one of the container's items should be visible at a time.


Sign up today
MyVaccine is a fast ticket booking system for vaccinations against current new Viruses and their Mutations.
https://github.com/RunMyProject/MyVaccine.com.Flask
Python, Flask, GraphQL, Graphene, SQLAlchemy, Bootstrap, JQuery


The Use Software Flow Control button will change the way that Ameol communicates with your modem. Most modems use a hardware connection to tell the computer to send or stop sending data. However, if your modem (or modem cable) doesn't support this then the modem can send the same information via the main data line to tell the computer when to send data. This button will switch Ameol into this software control mode.


XINS - AJAX Example 2
Description
This page is a demo shows calls to the meta functions of an API that returns HTML by
using the XSLT calling convention.
This example requires the myproject API to run on your computer.
To run the myproject API, go to the demo\xins-project directory and execute xins run-myproject.
Meta functions
Answer:
Answer:
Get Statistics
Hide Statistics
Answer:
Technical explanations
In the explanations _meta_ is the name of the meta function (e.g. _GetVersion).
- When you click on the Get button the Javascript function callMeta(_meta_) is called.
- The callMeta() function, call the XINS API with the _xins-xslt
calling convention. the _template parameter points to
http://xins.sf.net/demo/_meta_.xslt.
- The returned HTML from the XINS call is inserted to the HTML tag
<span id="_meta_"><span> by the Javascript
code document.getElementById(meta).innerHTML = req.responseText;.
- The hide button hides the text by executing the Javascript
document.getElementById(_meta_).innerHTML = ''
You can have a look at the source code of this HTML page to fully understand this example.
XSLT used by this example:
GetVersion,
GetSettings,
GetStatistics.
For security reason, this script works only locally with Internet Explorer or with other
browsers when the HTML page is hosted on the same server as the API.
Prev - Next


XCMSDB(1) XCMSDB(1) NAME xcmsdb - Device Color Characterization utility for X Color Management System SYNOPSIS xcmsdb [ -query ] [ -remove ] [ -format 32|16|8 ] [ filename ] DESCRIPTION xcmsdb is used to load, query, or remove Device Color Characterization data stored in properties on the root window of the screen as specified in section 7, Device Color Characterization, of the ICCCM. Device Color Characterization data (also called the Device Profile) is an integral part of Xlib's X Color Management System (Xcms), necessary for proper conversion of color specification between device-independent and device- dependent forms. Xcms uses 3x3 matrices stored in the XDCCC_LIN‐ EAR_RGB_MATRICES property to convert color specifications between CIEXYZ and RGB Intensity (XcmsRGBi, also referred to as linear RGB). Xcms then uses display gamma information stored in the XDCCC_LINEAR_RGB_CORRECTION property to convert color specifications between RGBi and RGB device (XcmsRGB, also referred to as device RGB). Note that Xcms allows clients to register function sets in addition to its built-in function set for CRT color monitors. Additional function sets may store their device profile information in other properties in function set specific format. This utility is unaware of these non-stan‐ dard properties. The ASCII readable contents of filename (or the standard input if no input file is given) are appropriately transformed for storage in proper‐ ties, provided the -query or -remove options are not specified. OPTIONS xcmsdb program accepts the following options: -query This option attempts to read the XDCCC properties off the screen's root window. If successful, it transforms the data into a more readable format, then sends the data to standard out. -remove This option attempts to remove the XDCCC properties on the screen's root window. -format 32|16|8 Specifies the property format (32, 16, or 8 bits per entry) for the XDCCC_LINEAR_RGB_CORRECTION property. Precision of encoded floating point values increases with the increase in bits per entry. The default is 32 bits per entry. SEE ALSO xprop(1), Xlib documentation ENVIRONMENT DISPLAY to figure out which display and screen to use. AUTHOR Chuck Adams, Tektronix Inc. Al Tabayoyon, SynChromatics Inc. (added multi-visual support) X Version 11 xcmsdb 1.0.4 XCMSDB(1)


seanwasere
Minimalist Chrome Bottle Trap & Pipe
Quality solid brass chrome plated
10 Year Guarantee
30CM of chrome pipe included
Chrome plated pipe cover plate
Comes with special foam packaging
Buy Minimalist Chrome Bottle Trap from Amazon.com
Buy Minimalist Chrome Bottle Trap from Amazon.co.uk
Buy Minimalist Chrome Bottle Trap from Amazon.in
Kaufen Minimalistisches Chrom Flaschensiphon von Amazon.de


A user. Always an object. Users are sent in downstream messages, but upstream just the name is provided. It would have been cleaner to have the user flags a separate JSON fields, but users are sent a lot and I didn't want to use so much bandwidth.
| Field | Meaning |
|---|---|
| name | The user name |
| rank | The rank of the user. Optional; missing means no rank. |
| flags | A string. Each character in the string represents a flag. See below. |
| authLevel | Optional. One of normal, robot_ranked, teacher, jr_admin, sr_admin, or super_admin. If not present, then it is normal. |
| Flags | |
| g | Guest |
| c | Connected (logged in right now) |
| d | Account has been deleted |
| s | User is sleeping (more than 10 minutes since last interaction) |
| a | User has an avatar. |
| r | User is a robot. |
| TT | User has won a KGS tournament. |
| t | User has been runner up in a KGS tournament. |
| p | User is currently playing in a game. |
| P | User is currently playing in a KGS tournament game. |
| * | User is a KGS Plus subscriber. |
| ! | User is KGS Meijin |
| = | User can play ranked games. |
| ~ | User plays stronger players far more often that weaker ones. |
A role indicates how a player is involved in a game. A player may hold more than one role in a game. Represented as a string. It can be one of:
Game flags are usually used as fields in a message, with a boolean value. The flags are:
On KGS, SGF files are dynamic. A change in an SGF file is reperesented by an SGF Event object. Every SGF event has two mandatory fields: nodeId that is the ID of the SGF node where the event takes place, and type, that indicates what happened and what type of data is in the object.
Playbacks have some additional "SGF Events." These aren't really related to SGF, but the playbacks store them mixed in with SGF changes so that as the file is played back, the SGF file will change in sync with the audio track and teacher's mouse poniter.
| type | Field | Meaning |
|---|---|---|
| PROP_ADDED | prop | A SGF property that has been added to the node. |
| PROP_REMOVED | prop | A SGF property that has been removed from the node. |
| PROP_CHANGED | prop | A SGF property that has been modified. Find another property with the same type and (if applicable) same location, and replace it with the property given here. |
| CHILDREN_REORDERED | children | An array of node IDs, indicating the children of this node, in their new ordering. Note: This SGF event type is only supported as a downstream event. Clients must not send it upstream to the server at this time. |
| CHILD_ADDED | childNodeId | The ID of the new child (which is a child of the current node). |
| position | Optional. This is the order, in the child list, of the current child. If this is missing, then it is child 0 (the first child) of the current node. | |
| PROP_GROUP_ADDED | props | A list of properties to add. |
| PROP_GROUP_REMOVED | props | A list of properties to remove. |
| ACTIVATED | prevNodeId | Indicates that the focus of the game has switched to this node. prevNodeId is the previous active node. |
| POINTER_MOVED | x | Floating point. The x-coordinate of the pointer. (For playbacks only). |
| y | Floating point.The y-coordinate of the pointer. (For playbacks only). | |
| TIMESTAMP | time | Floating point. Current time offset into the playback. |
| SPEEX_FPP | fpp | The frames per packet for SPEEX data in this playback. |
| SPEEX_MUTE_CHANGED | mute | Speex was muted/unmuted. Playbacks only. |
| SPEEX_DATA | data | base64 encoded SPEEX data. Playbacks only. |
The SGF in KGS is not quite like "standard" SGF. Multiple marks of the same type are considered different properties, so for example TR[aa][bb][cc] on KGS would be three different properties, one for each location. All rules-related properties (SZ[], TM[], etc) are grouped together in one "rules" property, etc. Furthere, some properties, such as DEAD, are not part of SGF but are used internally by KGS to track the state of the game board.
The fields present in a node may be:
| Property Name | Fields |
|---|---|
| RULES | The fields of a KGS rules object are present. |
| GAMENAME | text |
| PLAYERNAME | color, text |
| DATE | text |
| COPYRIGHT | text |
| GAMECOMMENT | text |
| EVENT | text |
| ROUND | text |
| PLACE | text |
| PLAYERTEAM | color, text |
| ANNOTATOR | text |
| SOURCE | text |
| TRANSCRIBER | text |
| MOVE | color, loc |
| CIRCLE | loc |
| PHANTOMCLEAR | loc |
| ADDSTONE | color, loc |
| TIMELEFT | color, float |
| LABEL | loc, text |
| TRIANGLE | loc |
| SQUARE | loc |
| TERRITORY | color, loc |
| DEAD | loc |
| COMMENT | text |
| RESULT | text; see score, although numeric results are in a string. |
| SETWHOSEMOVE | color |
| MOVENUMBER | int |
| MOVENAME | text |
| CROSS | loc |
| UNKNOWN | text |
| ARROW | loc, loc2 |
| LINE | loc, loc2 |
| DONESCORING | Special case: Will have fields black and white, as booleans, indicating which players have sent "done" status to the server. |
The rules for a game. Always represented as a JSON object.
| Field | Meaning |
|---|---|
| size | The size of the board. 2 through 38 are supported by KGS. |
| rules | One of japanese, chinese, aga, or new_zealand. |
| handicap | Not present for handicap 0. At most 9. |
| komi | A floating point number. Must be a multiple of 0.5, -100.0 through +100.0. |
| timeSystem | One of none, absolute, byo_yomi, or canadian. |
| mainTime | Time for the main time period, in seconds. Not needed when your time system is none. Up to 2147483 seconds. |
| byoYomiTime | Time for each byo-yomi period. Only needed for Canadian and Byo-Yomi time systems. Up to 2147483 seconds. |
| byoYomiPeriods | Number of byo-yomi periods. Only needed for byo-yomi time system. At most 255. |
| byoYomiStones | Number of stones per byo-yomi period. Only needed for Canadian time system. At most 255. |
A game summary is a permanent record of a game. Game channels come and go as games are loaded and closed, but a game summary stays for 6 months on the server (and forever in the online archives).
| Field | Meaning |
|---|---|
| size | The size of the board from this game. |
| timestamp | The time stamp of when this game was started. This is also used as a serverwide ID for the game; no two games will ever have the same timestamp, and the time stamp is used to refer to the game summary. |
| gameType | One of demonstration, review, rengo_review, teaching, simul, rengo, free, ranked, or tournament. |
| score | Optional. The score of the game. Not present if the game hasn't ended yet. |
| revision | Optional. The revision is used when downloading an SGF file; every SGF file has the path /games/year/month/day/white-black-revision.sgf. If revision is missing here, then it is not in the URL either. |
| players | An object mapping roles to user objects, telling who was in the game. The user objects in this map are snapshots of the players at the time the game started; you should ignore all the flags in them other than the rank information (which may not be the current rank of the player). |
| tag | Only present in tag archives. The tag associated with the game summary. |
| private | Optional. If set, this is a private game. If the flag is missing, that is the same as false. |
| inPlay | Optional. If set, the game is currently in play. If the flag is missing, that is the same as false. |
| tag | Only present when listing game summaries from a tag archive. This is the game for the game. |
A game channel is a game currently being played, or it may be a challenge (an attempt to set up a custom game). There are several cases where game channels are described in a message, and they always contain these fields.
| Field | Meaning |
|---|---|
| channelId | Channel ID of the game |
| gameType | The game type. |
| initialProposal | The proposal that the challenge owner uploaded initially. For challenge game types only. |
| Various | The fields for the rules of the game are present (not for challenge games). |
| score | The final score of the game. Missing if the game isn't over yet. |
| moveNum | The current move number of the game. |
| observers | The number of people observing the game. Missing if there are none. |
| roomId | The room that contains this game. |
| Various | The game flags. |
| name | Optional. If the game has a name, it is here. |
| players | An object mapping role to user. |
A proposal is an offer to start a game. It includes the rules and may include some or all of the players. If all the players needed are present in the proposal, then it is called a "complete" proposal.
Note: The first player in a proposal must always be the challenge owner. When manipulating a proposal, in general leave the player list in the order it started; if you want to change the roles for each player, change the role field and not the player field. You will get strange results if you don't do this.
| Field | Meaning |
|---|---|
| gameType | The game type of the game. |
| rules | The rules for the game. |
| nigiri | If set, that means nigiri will be used to determine who plays white. |
| Various | The game flags may be present. |
| players | A list of players. All roles for this game type must be present. |
| Player | |
| role | The role of the player. |
| name | Upstream only. The name of the player. In incomplete challenges, leave any unassigned roles with no player. |
| user | Downstream only. The user who is filling this role. Will not be present in incomplete challenges. |
| handicap | Only present for black players in simul games. The handicap for this player. |
| komi | Only present for black players in simul games. The komi for the player. |
Always a list. Each element of the list is an object. They indicate when you had a subscription, and thus which playbacks you can view (if you have a subscription now).
| Field | Meaning |
|---|---|
| start | Time of the start of this subscription period. |
| end | The end of this subscription period. |
Scores may be a floating point number, or a string.  Strings may be UNKNOWN, UNFINISHED, NO_RESULT, B+RESIGN, W+RESIGN, B+FORFEIT, W+FORFEIT, B+TIME, or W+TIME.


Contact
Teacher Contact
Julia Elman
<EMAIL_ADDRESS>(828) 423-04170 – Emergency calls only after 5pm.
Campus Director
Jessica Mitsch
<EMAIL_ADDRESS>(919) 280-6177
ATC Security Office
(919) 433-1563 - Available 24 hours/7 days a week.


--- layout: default ---
This is my blog, a reflective tool (journal) in my programming adventures. I will write about what I am learning, this will solidify my understanding of programming. I chose jekyll because it's static and it works real good with GitHub Pages, it's easy to set up and get running locally with any OS and cli. To host on GitHub pages I'm using CNAME.
{{ post.title | escape }}
{{post.subtitle}}
{% assign date_format = site.minima.date_format | default: "%b %-d, %Y" %}


Author Name
This is some text.[2]
A statement.[3]
A statement.[1]
A bold statement![2]
The hail-and-rainbow protocol can be initiated at five levels: double, tertiary, supernumerary, supermassive, and apocalyptic party.[1] A bold statement![2] Another outrageous statement.[2]
A statement.[2]


Study Store
Upload
∞ Credits
Profile
Categories
All Studies
Categorization
Induction and acquisition
Judgement and classification
Representation and structure
Similarity
Knowledge representation
Dual-coding theories
Media psychology
Mental imagery
Numerical cognition
Proposition encoding
Language
Language acquisition
Language processing
Linguistic grammar
Phonetics Phonology
Memory
Aging and memory
Autobiographical memory
Childhood memory
Constructive memory
Emotion and memory
Episodic memory
Eyewitness memory
Perception
Attention
Object recognition
Pattern recognition
Perception
Form perception
Psychophysics
Cognition
Choice
Concept formation
Decision making
Logic
Psychology of reasoning
We have found the following studies as a search result...


herds swine production transmission ASF herd number movements infected spread surveillance wild African animals fever contact (). virus infection {border-style control introduction pig clinical px;} #ffffff;} detection index considered distribution :–. case measures small density epidemiological visits France French Number Vet type virological according cases different local model represent European data dead duration free-range herds. introduced median pigs rate serological size time zones (Figure Figure Halasa However, Transmission affected based boar breeding evaluated impact network potential risk selected sites trade Dis. Emerg Zone additional average described domestic epidemics evaluate herds, involved modeling probability px; results zone {font-family Europe Table analyze areas boars consequences depending disease font-size geographic infectious low-density relatively screening secondary seeder simulations used Index Swine Transbound Union Veterinary al.. analysis countries days direct double; epidemic high-density highest large movement obtained outbreaks policies population previous provided randomly reaching route sites. subjected using (days) -km ./tbed. Eastern analyzed animal animals. area, assess border-color border-width clearly clinical, clinically commercial distance distances framework growing human implementation investigations limited mainly outgoing parameters performed period rates related represented scenario scenarios set similar simulated site solid; structure susceptible systematically total types virus's {font-style {font-weight -day ./fvets.. Czech DTU-DADS-ASF EFSA France. Free-range Herds Indeed, Introduction Material Supplementary areas, article at: batch bold cases, contacts courier; days, densities derived designed despite detect developed did directed economic em; emergence exerted farm farrowing force having higher huge implemented increasing incursion initial inspection inspections introduction, likely links location main major material model's mortality neighboring notification online original period. pigs. populations. potentially pt;} regarding reported revealed role serological, shared simulation situation sizes slaughterhouse smaller specific visits,


climate change market free ideology responsibility anthropogenic belief corporate social < deal change. environmental research policy CSR support beliefs companies relationship responsible strong dealing {border-style effect px;} #ffffff;} regulatory contract expectations perceived believe corporations important Bus. community company high human organizations Change Climate likely mediated perceptions role societal standard views .(.), Unsworth duty political regulation significant supported SE(B) change, individuals levels moderation px; related {font-family -., Carroll Research Russell University [., affect believed believes change; deviation economic effects font-size low particularly people weak words, (.) .), Belief CSR. Donaldson Environ. Ethics National Table analysis consumers did different discretionary double; ethical free-market government need negative organizational perception shown stronger -.ˆ*** .ˆ*** Australian Heath However, Manage. Moreover, action activity address age border-color border-width caused corporation’s data definitions direct future held ideology. indirect individual key legally mean measure participants person play pro-environmental propose relationships responsibilities seen significantly society solid; study survey voluntary {font-style {font-weight "Strongly (e.g., (i.e., Acad. Adaptation Business CSR, Corporate Dahlsrud Davis Dunfee Free Government Hypothesis McCright Participants Soc. argue behavior bold conducted consider contract, courier; em; evidence examined explore findings focused given governments greater however, humans ideology, interaction international interventions legal loci measured model moderated policy. positive pt;} research, responsibility. scale scientific second suggest understand understanding used using variables


Base node
Base abstract node class that all other node types inherit from.
Functions
| constructor () | Constructs a base node class instance (not called directly as it is an abstract class that requires methods to be overriden). |
| run (...) | Runs one step of this node which may or may not have child nodes to also run. |
| set_object (object) | Sets the object that this node will operate on where every node under this one will have access to it |
| set_shared_object (object) | Sets an object that many node instances can share |
| get_state () | Gets the current state of this node |
| is_running () | Check if this node is currently running. |
| has_succeeded () | Check if this node has succeeded. |
| has_failed () | Check if this node has failed. |
| running () | Sets the node's state to "running" implying that the node is not finished yet. |
| succeed () | Sets the node's state to "success" implying that the node is done and it succeeded. |
| fail () | Sets the node's state to "failed" implying that the node is done and it failed. |
| reset () | Resets the node's state and other stateful properties so it may be ran again. |
| on_start [abstract] | Optionally overidden and called when the node begins processing. |
| on_step [abstract] | The main method that handles the processing for this node. |
| on_finish [abstract] | Optionally overidden and called when the node finishes processing. |
Functions
- constructor ()
- Constructs a base node class instance (not called directly as it is an abstract class that requires methods to be overriden).
- run (...)
-
Runs one step of this node which may or may not have child nodes to also run.
Any parameters are passed down the hierarchy of nodes to each call of the child nodes' run functions.
Parameters:
- ...
Returns:
-
A string representing the enum behaviors.states of "running", "success", or "failed".
- set_object (object)
-
Sets the object that this node will operate on where every node under this one will have access to it
Parameters:
- object tab The object that the node will operate on
- set_shared_object (object)
-
Sets an object that many node instances can share
Parameters:
- object tab The shared object
- get_state ()
-
Gets the current state of this node
Returns:
-
A string representing the enum behaviors.states of "running", "success", or "failed".
- is_running ()
-
Check if this node is currently running.
Returns:
-
bool
True if running, false for any other state.
- has_succeeded ()
-
Check if this node has succeeded.
Returns:
-
bool
True if succeeded, false for any other state.
- has_failed ()
-
Check if this node has failed.
Returns:
-
bool
True if failed, false for any other state.
- running ()
-
Sets the node's state to "running" implying that the node is not finished yet.
Returns:
-
A string representing the enum behaviors.states of "running".
- succeed ()
-
Sets the node's state to "success" implying that the node is done and it succeeded.
Returns:
-
A string representing the enum behaviors.states of "success".
- fail ()
-
Sets the node's state to "failed" implying that the node is done and it failed.
Returns:
-
A string representing the enum behaviors.states of "failed".
- reset ()
- Resets the node's state and other stateful properties so it may be ran again.
- on_start [abstract]
-
Optionally overidden and called when the node begins processing.
Parameters:
- any Any parameters passed to parent node's run call
- on_step [abstract]
-
The main method that handles the processing for this node. Subclasses will override this
method to perform specific tasks relevant to the node's individual types. The node base class
only has an empty stub method that just throws a not implemented error.
Parameters:
- any Any parameters passed to the node's run method
Returns:
-
A string representing the enum behaviors.states of "running", "success", or "failed".
- on_finish [abstract]
-
Optionally overidden and called when the node finishes processing.
Parameters:
- any Any parameters passed to the node's run method


Valores X:
| 0.22 | 0.5 |
| 0.55 | 2.2 |
| 2.05 | 1.01 |
| 1.01 | 1.96 |
Valores Y:
| 2 | 0 |
| 4 | 2 |
| 1 | 0 |
| 2 | 2.5 |
Valores:
latentVectors: 10,
tolerance: 1e-4,
T - Score matrix of X
P - Loading matrix of X
U - Score matrix of Y
Q - Loading matrix of Y
B - Matrix of regression coefficient
W - Weight matrix of X


Let your creativity run wildCinema 4D Broadcast and Cinema 4D Studio contain additional 3D power for even more breathtaking results! 3D artists around the world rely on Cinema 4D as one of the most stable and easy-to-use professional 3D applications. Whether it's a Hollywood blockbuster, broadcast motion graphics or independent short films, Cinema 4D has everything you need for high-end 3D! Comprehensive information about MAXON products and the fantastic world of 3D is available at www.maxon.net. |


×
Today
Search Ticket
Weekly Summary
Sign Out
Hello
☰
Ticket Number
Task Type
Product Developement
Department O/H
Internal Process
Internal Marketing Work
Sales Support
Education
Century-21
Start Time
End Time
Summarize
Submit
Ticket Number
QA Time
Developer Time
Today's Time


Home
Achievements
Projects
Experience
Skills
Secured top 0.1 percentile rank in Undergraduate Entrance examination held on an all India level.
2020
Selected for INSPIRE (Innovation in Science Pursuit for Inspired Research) scholarship by DST, Government of India
2020
Awarded Governor's Gold for securing 98% in Board exams.
2018
Awarded Scholar's badge for excellent academic and extracurricular performance.
2018
Secured 1st Position in National Cyber Olympiad(NCO) on an institution level.
2014, 2015
Secured top 1 percentile rank in Board examinations.
2020


001 002/* 003 * Copyright (C) 2015 Archie L. Cobbs. All rights reserved. 004 */ 005 006package org.jsimpledb.kv.mvcc; 007 008import com.google.common.base.Preconditions; 009 010import java.util.ArrayList; 011import java.util.HashMap; 012import java.util.HashSet; 013import java.util.List; 014import java.util.NavigableSet; 015import java.util.TreeSet; 016 017import org.dellroad.stuff.java.Predicate; 018import org.dellroad.stuff.java.TimedWait; 019import org.jsimpledb.kv.KeyRanges; 020import org.jsimpledb.util.ByteUtil; 021 022/** 023 * Manager of read/write locks on {@code byte[]} key ranges that ensures isolation and serialization while allowing concurrent 024 * access by multiple threads to a single underlying {@code byte[]} key/value store. 025 * 026 *
 027 * This implementation is straightforward: read locks can overlap, but write locks may not, and all locks owned 028 * by the same owner remain in force until all are {@linkplain #release released} at the same time. 029 *
 030 * 031 *
 032 * Instances are configured with a monitor object which is used for all internal locking and inter-thread wait/notify 033 * handshaking (by default, this instance). A user-supplied monitor object may be provided via the constructor. 034 *
 035 * 036 *
 037 * Two timeout values are supported: 038 *
 039 *
The wait timeout (specified as a parameter to {@link #lock lock()}) limits how long a thread will wait 040 * on a lock held by another thread before giving up
 041 *
The {@linkplain #getHoldTimeout hold timeout} limits how long a thread may hold 042 * on to a contested lock before being forced to release all its locks; after that, the 043 * next call to {@link #lock lock} or {@link #release release} will fail
 044 *
 045 * 046 *
 047 * Note that if the hold timeout is set to zero (unlimited), then an application bug that leaks locks will result 048 * in those locks never being released. 049 *
 050 */ 051public class LockManager { 052 053 private static final long TEN_YEARS_MILLIS = 10L * 365L * 24L * 60L * 60L * 1000L; 054 055 private final Object lockObject; 056 057 // Contains each owner's lock time, or null if hold timeout has expired. 058 // Invariant: if owner has any locks, then owner is a key in this map and value is not null. 059 // In the case owner's hold timeout expired and another owner forced it to release all of its locks, the expired 060 // owner will own no locks but still exist in this map (with a null value), until its next lock() or release(). 061 private final HashMap<LockOwner, Long> lockTimes = new HashMap<>(); 062 063 private final TreeSet<Lock> locksByMin = new TreeSet<>(Lock.MIN_COMPARATOR); // locks ordered by minimum 064 private final TreeSet<Lock> locksByMax = new TreeSet<>(Lock.MAX_COMPARATOR); // locks ordered by maximum 065 private final long nanoBasis = System.nanoTime(); 066 067 private long holdTimeout; 068 069 /** 070 * Convenience constructor. Equivalent to LockManager(null). 071 */ 072 public LockManager() { 073 this(null); 074 } 075 076 /** 077 * Primary constructor. 078 * 079 * @param lockObject Java object used to synchronize field access and inter-thread wait/notify handshake, 080 * or null to use this instance 081 */ 082 public LockManager(Object lockObject) { 083 this.lockObject = lockObject != null ? lockObject : this; 084 } 085 086 /** 087 * Get the hold timeout configured for this instance. 088 * 089 *
 090 * The hold timeout limits how long a thread may hold on to a contested lock before being forced to release 091 * all of its locks; after that, the next call to {@link #lock lock} or {@link #release release} will fail. 092 *
 093 * 094 * @return hold timeout in milliseconds 095 */ 096 public long getHoldTimeout() { 097 synchronized (this.lockObject) { 098 return this.holdTimeout; 099 } 100 } 101 102 /** 103 * Set the hold timeout for this instance. Default is zero (unlimited). 104 * 105 * @param holdTimeout how long a thread may hold a contestested lock before {@link LockResult#HOLD_TIMEOUT_EXPIRED} 106 * will be returned by {@link #lock lock()} or {@link #release release()} in milliseconds, or zero for unlimited 107 * @throws IllegalArgumentException if {@code holdTimeout} is negative 108 */ 109 public void setHoldTimeout(long holdTimeout) { 110 Preconditions.checkArgument(holdTimeout >= 0, "holdTimeout < 0"); 111 synchronized (this.lockObject) { 112 this.holdTimeout = Math.min(holdTimeout, TEN_YEARS_MILLIS); // limit to 10 years to avoid overflow 113 } 114 } 115 116 /** 117 * Acquire a lock on behalf of the specified owner. 118 * 119 *
 120 * This method will block for up to {@code waitTimeout} milliseconds if the lock is held by 121 * another thread, after which point {@link LockResult#WAIT_TIMEOUT_EXPIRED} is returned. 122 * The configured locking object will be used for inter-thread wait/notify handshaking. 123 *
 124 * 125 *
 126 * If {@code owner} already holds one or more locks, but the {@linkplain #getHoldTimeout hold timeout} has expired, 127 * then {@link LockResult#HOLD_TIMEOUT_EXPIRED} is returned and all of the other locks are will have already been 128 * automatically released. 129 *
 130 * 131 *
 132 * Once a lock is successfully acquired, it stays acquired until all locks are released together via {@link #release release()}. 133 *
 134 * 135 * @param owner lock owner 136 * @param minKey minimum key (inclusive); must not be null 137 * @param maxKey maximum key (exclusive), or null for no maximum 138 * @param write true for a write lock, false for a read lock 139 * @param waitTimeout how long to wait before returning {@link LockResult#WAIT_TIMEOUT_EXPIRED} 140 * in milliseconds, or zero for unlimited 141 * @return a {@link LockResult} 142 * @throws InterruptedException if the current thread is interrupted while waiting for the lock 143 * @throws IllegalArgumentException if {@code owner}, {@code minKey}, or {@code range} is null 144 * @throws IllegalArgumentException if {@code minKey > maxKey} 145 * @throws IllegalArgumentException if {@code waitTimeout} is negative 146 */ 147 public LockResult lock(LockOwner owner, byte[] minKey, byte[] maxKey, boolean write, long waitTimeout) 148 throws InterruptedException { 149 synchronized (this.lockObject) { 150 151 // Sanity check 152 Preconditions.checkArgument(owner != null, "null owner"); 153 Preconditions.checkArgument(waitTimeout >= 0, "waitTimeout < 0"); 154 waitTimeout = Math.min(waitTimeout, TEN_YEARS_MILLIS); // limit to 10 years to avoid overflow 155 156 // Check hold timeout 157 final long lockerRemaining = this.checkHoldTimeout(owner); 158 if (lockerRemaining == -1) 159 return LockResult.HOLD_TIMEOUT_EXPIRED; 160 161 // Create lock 162 Lock lock = new Lock(owner, minKey, maxKey, write); 163 164 // Wait for lockability, until the first one of: 165 // - Wait timeout 166 // - Locker's hold timeout 167 // - Lock owner's hold timeout 168 final LockChecker lockChecker = new LockChecker(lock); 169 if (!lockChecker.test()) { 170 long timeToWait = Math.min(waitTimeout, lockChecker.getTimeRemaining()); 171 if (lockerRemaining != 0) 172 timeToWait = Math.min(timeToWait, lockerRemaining); 173 if (!TimedWait.wait(this.lockObject, timeToWait, lockChecker)) 174 return LockResult.WAIT_TIMEOUT_EXPIRED; 175 } 176 177 // Check hold timeout again 178 if (this.checkHoldTimeout(owner) == -1) 179 return LockResult.HOLD_TIMEOUT_EXPIRED; 180 181 // Merge the lock with other locks it can merge with, removing those locks in the process 182 for (Lock that : lockChecker.getMergers()) { 183 final Lock mergedLock = lock.mergeWith(that); 184 if (mergedLock != null) { 185 this.locksByMin.remove(that); 186 this.locksByMax.remove(that); 187 owner.locks.remove(that); 188 lock = mergedLock; 189 } 190 } 191 192 // Add lock 193 this.locksByMin.add(lock); 194 this.locksByMax.add(lock); 195 owner.locks.add(lock); 196 197 // Set hold timeout (if not already set) 198 if (!this.lockTimes.containsKey(owner)) { 199 final long currentTime = System.nanoTime() - this.nanoBasis; 200 this.lockTimes.put(owner, currentTime); 201 } else 202 assert this.lockTimes.get(owner) != null; 203 204 // Done 205 return LockResult.SUCCESS; 206 } 207 } 208 209 /** 210 * Determine if the given lock owner holds a lock on the specified range. 211 * 212 * @param owner lock owner 213 * @param minKey minimum key (inclusive); must not be null 214 * @param maxKey maximum key (exclusive), or null for no maximum 215 * @param write if range must be write locked; if false, may be either read or write locked 216 * @return true if the range is locked for writes by {@code owner} 217 */ 218 public boolean isLocked(LockOwner owner, byte[] minKey, byte[] maxKey, boolean write) { 219 synchronized (this.lockObject) { 220 Preconditions.checkArgument(owner != null, "null owner"); 221 KeyRanges ranges = new KeyRanges(minKey, maxKey); 222 for (Lock lock : owner.locks) { 223 if (write && !lock.write) 224 continue; 225 ranges = ranges.remove(lock); 226 } 227 return ranges.isEmpty(); 228 } 229 } 230 231 /** 232 * Release all locks held by the specified owner. 233 * 234 *
 235 * If the owner's {@linkplain #getHoldTimeout hold timeout} has already expired, then all locks will have 236 * already been released and false is returned. 237 *
 238 * 239 *
 240 * Does nothing (and returns true) if {@code owner} does not own any locks. 241 *
 242 * 243 * @param owner lock owner 244 * @return true if successful, false if {@code owner}'s hold timeout expired 245 * @throws IllegalArgumentException if {@code owner} is null 246 */ 247 public boolean release(LockOwner owner) { 248 Preconditions.checkArgument(owner != null, "null owner"); 249 synchronized (this.lockObject) { 250 251 // Check if hold timeout has alread expired; in any case, remove lock time 252 if (this.lockTimes.containsKey(owner)) { 253 final Long lockTime = this.lockTimes.remove(owner); 254 if (lockTime == null) 255 return false; 256 } 257 258 // Release all locks 259 this.doRelease(owner); 260 261 // Done 262 return true; 263 } 264 } 265 266 /** 267 * Check whether the {@linkplain #getHoldTimeout hold timeout} has expired for the given lock owner 268 * and if not return the amount of time remaining. 269 * 270 *
 271 * If the owner's hold timeout has expired, then {@code -1} is returned and any locks previously held by {@code owner} 272 * will have been automatically released. 273 *
 274 * 275 * @param owner lock owner 276 * @return milliseconds until {@code owner}'s hold timeout expires, zero if {@code owner} has no hold timeout 277 * (e.g., nothing is locked or hold timeout disabled), or -1 if {@code owner}'s hold timeout has expired 278 * @throws IllegalArgumentException if {@code owner} is null 279 */ 280 public long checkHoldTimeout(LockOwner owner) { 281 synchronized (this.lockObject) { 282 if (this.holdTimeout == 0) 283 return 0; 284 if (!this.lockTimes.containsKey(owner)) 285 return 0; 286 final Long lockTime = this.lockTimes.get(owner); 287 if (lockTime == null) 288 return -1; 289 final long currentTime = System.nanoTime() - this.nanoBasis; 290 final long holdDeadline = lockTime + this.holdTimeout * 1000000L; 291 final long remaining = holdDeadline - currentTime; 292 if (remaining <= 0) { 293 this.lockTimes.put(owner, null); 294 this.doRelease(owner); 295 return -1; 296 } 297 return (remaining + 999999L) / 1000000L; 298 } 299 } 300 301 // Release all locks held by owner. Assumes synchronized already on this.lockObject. 302 private void doRelease(LockOwner owner) { 303 for (Lock lock : owner.locks) { 304 this.locksByMin.remove(lock); 305 this.locksByMax.remove(lock); 306 } 307 owner.locks.clear(); 308 this.lockObject.notifyAll(); 309 } 310 311 // Check whether we can lock, and fill the list of mergers and return zero if so. If not, return time remaining. 312 // Assumes synchronized already on this.lockObject. 313 private long checkLock(Lock lock, List<Lock> mergers) { 314 315 // Get lock's min & max 316 final byte[] lockMin = lock.getMin(); 317 final byte[] lockMax = lock.getMax(); 318 319 startOver: 320 while (true) { 321 322 // Get locks whose min is < lockMax 323 final NavigableSet<Lock> lhs = lockMax == null ? this.locksByMin : 324 this.locksByMin.headSet(Lock.getMinKey(lockMax, false), false); 325 326 // Get locks whose max is > lockMin 327 final NavigableSet<Lock> rhs = lockMin == null ? this.locksByMax : this.locksByMax.tailSet( 328 Lock.getMaxKey(ByteUtil.getNextKey(lockMin), false), true); 329 330 // Find overlapping locks and check for conflicts 331 final HashSet<Lock> overlaps = new HashSet<>(); 332 for (Lock other : lhs) { 333 334 // Does this lock overlap? 335 if (!rhs.contains(other)) 336 continue; 337 338 // Do this lock & other lock conflict? 339 if (lock.conflictsWith(other)) { 340 341 // See if other lock's owner's hold timeout has expired 342 assert this.lockTimes.containsKey(other.owner); 343 final long remaining = this.checkHoldTimeout(other.owner); 344 if (remaining == -1) 345 continue startOver; 346 347 // Return time remaining until conflicting owner's hold timeout 348 return Math.max(remaining, 1); 349 } 350 351 // Add overlap 352 overlaps.add(other); 353 } 354 355 //System.out.println(Thread.currentThread().getName() + ": LockChecker: BEFORE: lock = " + lock + "\n" 356 //+ " lockByMin = " + this.locksByMin + "\n" 357 //+ " lockByMax = " + this.locksByMax + "\n" 358 //+ " overlaps = " + overlaps + "\n"); 359 360 // Find overlaps we can merge with 361 for (Lock other : overlaps) { 362 if (lock.mergeWith(other) != null) 363 mergers.add(other); 364 } 365 366 //System.out.println(Thread.currentThread().getName() + ": LockChecker: AFTER: lock = " + lock + "\n" 367 //+ " lockByMin = " + this.locksByMin + "\n" 368 //+ " lockByMax = " + this.locksByMax + "\n" 369 //+ " mergers = " + mergers + "\n"); 370 371 // Done 372 return 0; 373 } 374 } 375 376// LockResult 377 378 /** 379 * Possible return values from {@link LockManager#lock LockManager.lock()}. 380 */ 381 public enum LockResult { 382 383 /** 384 * The lock was successfully acquired. 385 */ 386 SUCCESS, 387 388 /** 389 * The timeout expired while waiting to acquire the lock. 390 */ 391 WAIT_TIMEOUT_EXPIRED, 392 393 /** 394 * The owner's hold timeout expired. 395 */ 396 HOLD_TIMEOUT_EXPIRED; 397 } 398 399// LockChecker predicate 400 401 private class LockChecker implements Predicate { 402 403 private final Lock lock; 404 private final ArrayList<Lock> mergers = new ArrayList<>(); 405 406 private long timeRemaining; 407 408 LockChecker(Lock lock) { 409 this.lock = lock; 410 } 411 412 public List<Lock> getMergers() { 413 return this.mergers; 414 } 415 416 public long getTimeRemaining() { 417 return this.timeRemaining; 418 } 419 420 @Override 421 public boolean test() { 422 423 // Reset state 424 this.mergers.clear(); 425 426 // See if we can lock 427 this.timeRemaining = LockManager.this.checkLock(this.lock, this.mergers); 428 return this.timeRemaining == 0; 429 } 430 } 431} 432


Check out Epicodus. It's a great school for learning web programming!
Here is a link to my favorite things.
This is my first website!
Isn't it nice?
Here are some things I'm going to learn about coding:


Document Information
Preface
Part I Introduction
1. Overview
2. Using the Tutorial Examples
Part II The Web Tier
3. Getting Started with Web Applications
4. JavaServer Faces Technology
5. Introduction to Facelets
6. Expression Language
7. Using JavaServer Faces Technology in Web Pages
8. Using Converters, Listeners, and Validators
9. Developing with JavaServer Faces Technology
10. JavaServer Faces Technology: Advanced Concepts
11. Using Ajax with JavaServer Faces Technology
12. Composite Components: Advanced Topics and Example
13. Creating Custom UI Components and Other Custom Objects
14. Configuring JavaServer Faces Applications
15. Java Servlet Technology
16. Java Servlet Technology: Advanced Topics
17. Internationalizing and Localizing Web Applications
Part III Web Services
18. Introduction to Web Services
19. Building Web Services with JAX-WS
20. Building RESTful Web Services with JAX-RS
21. JAX-RS: Advanced Topics and Example
Part IV Enterprise Beans
22. Enterprise Beans
23. Getting Started with Enterprise Beans
24. Running the Enterprise Bean Examples
25. A Message-Driven Bean Example
26. Using the Embedded Enterprise Bean Container
27. Using Asynchronous Method Invocation in Session Beans
Part V Contexts and Dependency Injection for the Java EE Platform
28. Introduction to Contexts and Dependency Injection for the Java EE Platform
29. Running the Basic Contexts and Dependency Injection Examples
30. Contexts and Dependency Injection for the Java EE Platform: Advanced Topics
31. Running the Advanced Contexts and Dependency Injection Examples
Part VI Persistence
32. Introduction to the Java Persistence API
33. Running the Persistence Examples
34. The Java Persistence Query Language
35. Using the Criteria API to Create Queries
36. Creating and Using String-Based Criteria Queries
37. Controlling Concurrent Access to Entity Data with Locking
38. Improving the Performance of Java Persistence API Applications By Setting a Second-Level Cache
Part VII Security
39. Introduction to Security in the Java EE Platform
40. Getting Started Securing Web Applications
41. Getting Started Securing Enterprise Applications
42. Java EE Security: Advanced Topics and Example
Part VIII Java EE Supporting Technologies
43. Introduction to Java EE Supporting Technologies
44. Transactions
45. Resources and Resource Adapters
46. Running the Resource Adapter Example
47. Java Message Service Concepts
48. Java Message Service Examples
49. Bean Validation: Advanced Topics
50. Using Java EE Interceptors
Part IX Case Studies
51. Duke's Bookstore Case Study Example
52. Duke's Tutoring Case Study Example
53. Duke's Forest Case Study Example
Index
|
|
D
- databases
- clients, Benefits of Enterprise Beans
- connections
- Business Methods
- Returning without Committing
- data recovery, Transactions
- EIS tier, Distributed Multitiered Applications
- message-driven beans and, What Makes Message-Driven Beans Different from Session Beans?
- multiple
- JTA Transactions
- Updating Multiple Databases
- See also transactions
- data encryption, Client Authentication
- data integrity
- Characteristics of Application Security
- Transactions
- What Is a Transaction?
- DataSource interface, DataSource Objects and Connection Pools
- data sources, DataSource Objects and Connection Pools
- debugging, Java EE applications, Debugging Java EE Applications
- declarative security
- Overview of Java EE Security
- Overview of Web Application Security
- Securing Enterprise Beans
- example, Example: Securing an Enterprise Bean with Declarative Security
- decorators
- CDI, Using Decorators in CDI Applications
- example, The decorators Example: Decorating a Bean
- DeliveryMode interface, Specifying Message Persistence
- delivery modes, Specifying Message Persistence
- JMSDeliveryMode message header field, Message Headers
- Dependency Injection for Java (JSR 330)
- Dependency Injection for Java (JSR 330)
- Introduction to Contexts and Dependency Injection for the Java EE Platform
- deployer roles, Application Deployer and Administrator
- deployment, Building, Packaging, Deploying, and Running the converter Example
- deployment descriptors
- Packaging Applications
- Overview of Java EE Security
- Using Deployment Descriptors for Declarative Security
- enterprise bean
- Packaging Enterprise Beans in WAR Modules
- Using Deployment Descriptors for Declarative Security
- Securing Enterprise Beans
- Securing Enterprise Beans
- Java EE, Packaging Applications
- runtime
- Packaging Applications
- Web Modules: The hello1 Example
- security-role-mapping element, Mapping Roles to Users and Groups
- security-role-ref element, Declaring and Linking Role References
- web application
- Web Applications
- Web Modules: The hello1 Example
- Basic Requirements of a JavaServer Faces Application
- Using Deployment Descriptors for Declarative Security
- Destination interface, JMS Destinations
- destinations, JMS Destinations
- creating
- Administered Objects for the simplemessage Example
- To Create JMS Resources Using NetBeans IDE
- injecting resources
- The simplemessage Application Client
- JMS Destinations
- JMSDestination message header field, Message Headers
- See also queues, temporary destinations, topics
temporary
- Creating Temporary Destinations
- Coding the Application Client: HumanResourceClient.java
- Coding the Application Client: MultiAppServerClient.java
- destroy method, Finalizing a Servlet
- development roles, Development Roles
- application assemblers, Application Assembler
- application client developers, Application Client Developer
- application component providers, Application Component Provider
- application deployers and administrators, Application Deployer and Administrator
- enterprise bean developers, Enterprise Bean Developer
- Java EE product providers, Java EE Product Provider
- tool providers, Tool Provider
- web component developers, Web Component Developer
- digest authentication, Digest Authentication
- digital signatures, Working with Digital Certificates
- document roots, Web Modules: The hello1 Example
- doFilter method
- Programming Filters
- Programming Filters
- Specifying Filter Mappings
- doGet method, Writing Service Methods
- domains, Starting and Stopping the GlassFish Server
- doPost method, Writing Service Methods
- downloading, GlassFish Server, Java EE 6 Software Development Kit
- DUPS_OK_ACKNOWLEDGE mode, Controlling Message Acknowledgment
- durable subscriptions, Creating Durable Subscriptions
- examples
- A Durable Subscription Example
- An Application That Uses the JMS API with a Session Bean
E
- eager attribute, managed beans, Eager Application-scoped Beans
- EAR files, Packaging Applications
- EIS tier, Enterprise Information System Tier
- security, Securing Enterprise Information Systems Applications
- EJB container, Container Types
- container-managed transactions, Container-Managed Transactions
- message-driven beans, Using Message-Driven Beans to Receive Messages Asynchronously
- onMessage method, invoking, The onMessage Method
- services
- Enterprise Beans
- Benefits of Enterprise Beans
- Securing Enterprise Beans
- EJB containers
- See also embedded enterprise bean container
- EJBContext interface
- Rolling Back a Container-Managed Transaction
- Methods Not Allowed in Container-Managed Transactions
- Methods Not Allowed in Bean-Managed Transactions
- EJB JAR files, The Contents of an Enterprise Bean
- ejb-jar.xml file
- Packaging Enterprise Beans in WAR Modules
- Using Deployment Descriptors for Declarative Security
- Securing Enterprise Beans
- EL
- Creating the Web Page
- Expression Language
- CDI managed beans, Giving Beans EL Names
- composite expressions, Where Value Expressions Can Be Used
- deferred evaluation expressions
- Overview of the EL
- Immediate and Deferred Evaluation Syntax
- expression examples, Examples of EL Expressions
- immediate evaluation expressions
- Overview of the EL
- Immediate and Deferred Evaluation Syntax
- literal expressions
- Where Value Expressions Can Be Used
- Literal Expressions
- literals, Referring to Object Properties Using Value Expressions
- lvalue expressions
- Overview of the EL
- Value Expressions
- managed beans, Using the EL to Reference Managed Beans
- method-binding expressions, Navigation Model
- method expressions
- Overview of the EL
- Method Expressions
- operators, Operators
- overview, Overview of the EL
- parameterized method calls, Parameterized Method Calls
- reserved words, Reserved Words
- rvalue expressions
- Overview of the EL
- Value Expressions
- tag attribute type, Defining a Tag Attribute Type
- type conversion during expression evaluation, Where Value Expressions Can Be Used
- value expressions
- Overview of the EL
- Value Expressions
- embeddable classes, See persistence: embeddable classes
- embedded enterprise bean container
- creating, Creating the Enterprise Bean Container
- developing applications, Developing Embeddable Enterprise Bean Applications
- See also EJB containers, enterprise beans
examples, The standalone Example Application
- initializing enterprise bean modules, Explicitly Specifying Enterprise Bean Modules to be Initialized
- overview, Overview of the Embedded Enterprise Bean Container
- running applications, Running Embedded Applications
- session bean references, Looking Up Session Bean References
- shutting down, Shutting Down the Enterprise Bean Container
- end-to-end security, Message-Layer Security
- enterprise applications, Overview
- securing, Getting Started Securing Enterprise Applications
- enterprise beans
- Business Components
- Enterprise JavaBeans Technology
- accessing, Accessing Enterprise Beans
- See also business methods
classes, The Contents of an Enterprise Bean
- compiling, Building, Packaging, Deploying, and Running the converter Example
- contents, The Contents of an Enterprise Bean
- converting to JAX-RS root resource classes, Integrating JAX-RS with EJB Technology and CDI
- defined, What Is an Enterprise Bean?
- dependency injection, Using Enterprise Beans in Clients
- deployment, The Contents of an Enterprise Bean
- distribution, Deciding on Remote or Local Access
- See also embedded enterprise bean container
exceptions, Handling Exceptions
- finding, Looking Up Session Bean References
- getCallerPrincipal method, Accessing an Enterprise Bean Caller’s Security Context
- implementor of business logic, Business Components
- integrating with JAX-RS, Integrating JAX-RS with EJB Technology and CDI
- interceptors, Using Java EE Interceptors
- interfaces
- Accessing Enterprise Beans
- The Contents of an Enterprise Bean
- isCallerInRole method, Accessing an Enterprise Bean Caller’s Security Context
- See also Java EE components
JAX-RS resources, The rsvp Example Application
- JNDI lookup, Using Enterprise Beans in Clients
- lifecycles, The Lifecycles of Enterprise Beans
- local access, Local Clients
- local interfaces, Local Clients
- See also message-driven beans
packaging
- Packaging Enterprise Beans in EJB JAR Modules
- Building, Packaging, Deploying, and Running the converter Example
- performance, Deciding on Remote or Local Access
- programmatic security, Accessing an Enterprise Bean Caller’s Security Context
- remote access, Remote Clients
- remote interfaces, Remote Clients
- securing, Securing Enterprise Beans
- See also session beans
singletons, Components of the rsvp Example Application
- testing, The standalone Example Application
- timer service, Using the Timer Service
- types, Types of Enterprise Beans
- web services
- Types of Enterprise Beans
- Web Service Clients
- A Web Service Example: helloservice
- Enterprise Information Systems, See EIS tier
- entities
- abstract, Abstract Entities
- abstract schema names, Select Statements
- application-managed entity managers, Application-Managed Entity Managers
- cascading operations
- Cascade Operations and Relationships
- Orphan Removal in Relationships
- collections, Collection Member Declarations
- container-managed entity managers, Container-Managed Entity Managers
- creating, Creating Entities
- discriminator columns, The Single Table per Class Hierarchy Strategy
- entity manager, The EntityManager Interface
- finding
- Finding Entities Using the EntityManager
- Finding Entities
- inheritance
- Entity Inheritance
- Entity Inheritance in the roster Application
- inheritance mapping, Entity Inheritance Mapping Strategies
- lifecycle, Managing an Entity Instance’s Lifecycle
- managing
- Managing Entities
- Managing the order Application’s Entities
- mapping to multiple tables, Entity Mapped to More Than One Database Table
- non-entity superclasses, Non-Entity Superclasses
- overview, Entities
- persistent fields, Persistent Fields and Properties in Entity Classes
- persistent properties, Persistent Fields and Properties in Entity Classes
- persisting, Persisting Entity Instances
- primary keys, Primary Keys in Entities
- querying, Querying Entities
- relationships, Setting Entity Relationships
- removing
- Removing Entity Instances
- Removing Entities
- requirements, Requirements for Entity Classes
- superclasses, Mapped Superclasses
- synchronizing, Synchronizing Entity Data to the Database
- validating, Validating Persistent Fields and Properties
- entity providers, JAX-RS, Using Entity Providers to Map HTTP Response and Request Entity Bodies
- entity relationships
- bidirectional, Bidirectional Relationships
- many-to-many
- Multiplicity in Entity Relationships
- The Many-To-Many Relationship in roster
- many-to-one, Multiplicity in Entity Relationships
- multiplicity, Multiplicity in Entity Relationships
- one-to-many, Multiplicity in Entity Relationships
- one-to-one, Multiplicity in Entity Relationships
- query language, Queries and Relationship Direction
- unidirectional, Unidirectional Relationships
- equals method, Primary Keys in Entities
- event and listener model
- User Interface Component Model
- Event and Listener Model
- See also action events
- binding listeners to managed bean properties, Binding Converters, Listeners, and Validators to Managed Bean Properties
- Event class, Event and Listener Model
- event handlers
- Restore View Phase
- Restore View Phase
- Steps for Creating a Custom Component
- event listeners
- Apply Request Values Phase
- Process Validations Phase
- Update Model Values Phase
- handling events of custom UI components, Handling Events for Custom Components
- implementing event listeners, Implementing an Event Listener
- Listener class, Event and Listener Model
- listener class, Writing Managed Bean Methods
- queueEvent method, Performing Decoding
- ValueChangeEvent class, Referencing a Method That Handles a Value-Change Event
- See also value-change events
- events
- CDI, Using Events in CDI Applications
- example, The billpayment Example: Using Events and Interceptors
- examples, Using the Tutorial Examples
- Ajax, The ajaxguessnumber Example Application
- asynchronous method invocation, session beans, The async Example Application
- basic authentication, Example: Basic Authentication with a Servlet
- Bean Validation, The address-book Application
- building, Building the Examples
- CDI
- Running the Basic Contexts and Dependency Injection Examples
- Running the Advanced Contexts and Dependency Injection Examples
- classpath, To Build, Package, and Deploy the converter Example Using Ant
- composite components, The compositecomponentlogin Example Application
- connectors, Running the Resource Adapter Example
- Criteria API, Criteria Queries in the roster Application
- directory structure, Tutorial Example Directory Structure
- Duke's Bookstore case study, Duke's Bookstore Case Study Example
- Duke's Forest case study, Duke's Forest Case Study Example
- Duke's Tutoring case study, Duke's Tutoring Case Study Example
- embedded enterprise bean container, The standalone Example Application
- Java EE Connector architecture, Running the Resource Adapter Example
- JAX-RS
- Example Applications for JAX-RS
- The customer Example Application
- JAX-WS, Creating a Simple Web Service and Clients with JAX-WS
- JMS asynchronous message consumption, A Simple Example of Asynchronous Message Consumption
- JMS durable subscriptions, A Durable Subscription Example
- JMS local transactions, A Local Transaction Example
- JMS message acknowledgment, A Message Acknowledgment Example
- JMS message-driven beans, A Message-Driven Bean Example
- JMS on multiple systems
- Running JMS Clients on Multiple Systems
- An Application Example That Consumes Messages from a Remote Server
- An Application Example That Deploys a Message-Driven Bean on Two Servers
- JMS queue browsing, A Simple Example of Browsing Messages in a Queue
- JMS synchronous message consumption, A Simple Example of Synchronous Message Receives
- JMS with entities, An Application That Uses the JMS API with an Entity
- JMS with session beans, An Application That Uses the JMS API with a Session Bean
- message-driven beans, A Message-Driven Bean Example
- persistence, Running the Persistence Examples
- primary keys, Primary Keys in Entities
- query language
- Using Queries
- Example Queries
- required software, Required Software
- resource adapters, Running the Resource Adapter Example
- security
- Example: Form-Based Authentication with a JavaServer Faces Application
- Example: Securing an Enterprise Bean with Declarative Security
- Example: Securing an Enterprise Bean with Programmatic Security
- servlet, The mood Example Application
- servlets
- Configuring Web Applications: The hello2 Example
- Creating the converter Web Client
- session beans
- Coding the Enterprise Bean Class
- The cart Example
- singleton session beans, A Singleton Session Bean Example: counter
- timer service, The timersession Example
- web clients, Creating the converter Web Client
- web services, A Web Service Example: helloservice
- exceptions
- business methods, Business Methods
- enterprise beans, Handling Exceptions
- JMS, JMS Exception Handling
- mapping to error screens, Mapping Errors to Error Screens
- rolling back transactions
- Handling Exceptions
- Rolling Back a Container-Managed Transaction
- transactions
- Mandatory Attribute
- Never Attribute
- expiration of JMS messages, Allowing Messages to Expire
- JMSExpiration message header field, Message Headers
- Expression Language
- See EL
- expressions
- lvalue expressions, Using the EL to Reference Managed Beans
- tag attribute type, Defining a Tag Attribute Type
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices
|


Status class is an Error Cluster with int, bool and string status with Core and UART messages.
More...
|
| int | Error = 0 [get, set] |
| | Numeric representation of status, any value other then 0 indicates an error. More...
|
| |
| bool | OK = false [get, set] |
| | Boolean representation of status, true means OK, false means ERROR. More...
|
| |
| string | Msg = "unknown" [get, set] |
| | String representation of status. More...
|
| |
| string | Extra = "" [get, set] |
| | Additional info, that can be used for detailed problem analysis. More...
|
| |
| BslCoreMessage | CoreStatus = BslCoreMessage.NotAvailable [get, set] |
| | BslCoreMessage status. More...
|
| |
| BslUartMessage | UartStatus = BslUartMessage.NotAvailable [get, set] |
| | BslUartMessage status. More...
|
| |
| Status | InnerStatus = null [get, set] |
| | Inner Status like inner exception can contain the previous Status, usually with error. More...
|
| |
Status class is an Error Cluster with int, bool and string status with Core and UART messages.
◆ FormattedString()
| string BSL430_NET.Status.FormattedString |
( |
Status |
Stat, |
|
|
bool |
TopLevel = false |
|
) |
| |
Formatted status from single object.
◆ ToString()
| override string BSL430_NET.Status.ToString |
( |
| ) |
|
Formatted Status chain, that is built from Msg and InnerStatus Msg properties, with Extra and optional Core/Uart Status.
◆ CoreStatus
◆ Error
| int BSL430_NET.Status.Error = 0 |
|
getset |
Numeric representation of status, any value other then 0 indicates an error.
◆ Extra
| string BSL430_NET.Status.Extra = "" |
|
getset |
Additional info, that can be used for detailed problem analysis.
◆ InnerStatus
| Status BSL430_NET.Status.InnerStatus = null |
|
getset |
Inner Status like inner exception can contain the previous Status, usually with error.
◆ Msg
| string BSL430_NET.Status.Msg = "unknown" |
|
getset |
String representation of status.
◆ OK
| bool BSL430_NET.Status.OK = false |
|
getset |
Boolean representation of status, true means OK, false means ERROR.
◆ UartStatus
The documentation for this class was generated from the following file:
- D:/PROJECTS/C#/BSL430.NET/src/BSL430.NET/BSL430NET.cs


RowHaus Debugger
You should see one line added below each time the seat moves forwards or backwards over the
magnetic sensor. If you do not see any entries, try disconnecting the jumper wires from
the rowing machine 2-pin connector and briefly touch them together to simulate the magnetic sensor.
The data fields are:
- count: The number of sensor pulses since the server on the RPi started. This should increment by one each time.
- dt1: the duration of the sensor pulse in milliseconds, which measures how fast the seat is moving when it passes the sensor.
- dt2: the elapsed time since the last sensor pulse in milliseconds, which measures the stroke rate.
- t: the server unix timestamp for this sensor pulse.
Values are rounded to three decimals in the printout below.


The noto-fonts package ('No Tofu' i.e. avoiding boxes with dots [ hex digits ] when a glyph cannot be found) is a set of fonts which aim to cover every glyph in unicode, no matter how obscure. These fonts, or at least the Sans Serif fonts, are used by KF5 (initially only for gtk applications).
Some of these fonts began life as the libre Source Sans Pro fonts from adobe.
As well as the full set, there is a slightly smaller and older set of fonts, with some extra fonts, at https://github.com/googlei18n/noto-fonts/archive/v2015-09-29-license-adobe.tar.gz (19 MB). The installation procedures for those are listed separately. Unfortunately, the tarball does not provide the CJK fonts.
This package is known to build and work properly using an LFS-7.10 platform.
Download (HTTP): https://noto-website-2.storage.googleapis.com/pkgs/Noto-hinted.zip
Download MD5 sum: 92e5af616ba8f5b420141a37c13b4d1c
Download size: 471 MB
Estimated disk space required: 582 MB
Estimated build time: less than 0.1 SBU
Almost nobody will ever encounter text for which some of these fonts can be used. Consult the wiki to see which fonts you might wish to delete.
UnZip-6.0 (for Noto-hinted.zip)
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/noto-fonts
Unlike most other packages there is no need to unpack the compressed Noto-hinted.zip package before installation.
To install Noto Fonts from the
full Noto-hinted zip file, run the following commands as the
root
user:
install -d -m755 /usr/share/fonts/noto && unzip Noto-hinted.zip -d /usr/share/fonts/noto && chmod 0644 /usr/share/fonts/noto/* && fc-cache
Alternatively, to install a smaller set from the tarball, untar it
as normal. You will note that there are both hinted/
and unhinted/
directories, and the documentation
suggests that linux users should install the hinted files.
In fact, there are many other fonts in the unhinted
directory, but all except one are
historic. The exception is the Noto Sans Symbols font - if Noto
Sans is your main font, you will probably want this because of the
currency symbols it provides.
In the hinted/
directory there are
also some duplicate TTC (TrueType Collection) files for NotoSans
which do not provide anything useful and similarly some UI variants
which were again a dead end.
To install from the tarball, run the following commands as the
root
user:
install -d -m755 /usr/share/fonts/noto && cp -v LICENSE hinted/*.ttf unhinted/NotoSansSymbols*.ttf /usr/share/fonts/noto && rm -v /usr/share/fonts/noto/Noto*UI* && chmod 0644 /usr/share/fonts/noto/* && fc-cache
If you remove any of the fonts, remember to run 'fc-cache' (as root) to update fontconfig.
This package does not come with a test suite.
Last updated on 2016-08-29 20:28:42 -0700


GETTING
STARTED
RC BASIC
Getting Started
Intro to Programming
Operators
Variables and Data Types
Arrays
Constants
Input/Output
Flow Control
Loops
Functions and Sub Routines
Scope
Keywords
Comments
Graphics and Sounds
Keyboard Codes
Escape Characters
FUNCTIONS BY NAME
Functions A-Z
FUNCTIONS BY CATEGORY
Console I/O
Arrays
Math
Strings
Stack
File I/O
Directories
Date and Time
Window Management
Canvases
Graphics Primitives
Loading and Drawing Images
Render Hints
Keyboard and Mouse
Sounds and Music
Joystick
Matrix Operations
Window Console
Text Editing
Drawing Text
Touch Events and Sensors
Networking
Video Playback
System and Platform Interface
Parallel Processing
Clipboard


"Romy and Michelle's High School Reunion" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Reviewed by Rory B Mackay
5 Star Rating: ***
In Brief: Nothing original, or even that funny, but not without its charm.
Lisa Kudrow (Phoebe from "Friends") and Mira Sorvino star in this aimiable comedy. Remember Jim Carrey's "Dumb and Dumber"? Well this film might well have been named "Blonde and Blonder". It was a bit of a surprise, actually, that Lisa Kudrow is basically playing a mirror image of her kooky "Friends" character, Phoebe Buffay. Not that I mind, after all I love "Friends" and Phoebe's probably my favourite character. It's just a wonder that Kudrow agreed to star in a film that basically stereotypes her as the scatty blonde. Still, she plays the part tremendously well, and joined by Mira Sorvino -- well, there's too Phoebes!
The plot revolves around Romy and Michelle's impending High School reunion (funnily enough!) and their attempts to make themselves appear more successful than they have actually turned out ("You won't believe this, but I invented the Post-it!"). Maybe you've already figured that there's nothing terribly original or fresh about the plot. True, there's not, in fact the film is riddled with cliches. But I don't really care, 'cos they're fun cliches, and this is a fun film.
I'm not so sure it's that funny a film, though. There are some funny moments, but it's more the type of comedy that'll have you quietly smiling to yourself, occasionally giggling, as opposed to rolling around the floor in hysterics. It's a quiet, gentle humour but quite enjoyable all the same. Kudrow and Sorvino are made for the roles, and are a lot of fun throughout. There are also a number of other engaging (if cliched) characters who were good fun.
One thing I could have done without was the obligatory "Romy and Michelle fall out" which popped up, jarringly, in the middle of the film. It felt forced and unoriginal. We knew they'd make up by the end of the film, anyway. Another annoying thing was one of those exceptionally frustrating "Oh, I've just woken up -- the past half hour was all a dream!" sequences. I wanted to cry out "Cheat! Cheat! CHEAT!"
So, summing up; the film is unashamedly unoriginal and maybe not quite as funny as it could have been it's an enjoyable, feel-good yarn. Worth a look.
~~~~~~~~~~~~~~~~~~~~~~ http://www.geocities.com/Hollywood/Bungalow/4960 Check out my site for regularly-updated Film and TV Reviews!
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


York Cycle Campaign
Cyclescape is an online campaigning toolkit for people working for better cycling across the UK.
Submit an issue to the local cycle campaign. No registration necessary.
There are 23 new discussions in your area. See what’s going on!
Join hundreds of other people and get involved in your local community.