text:
# Dotfiles
**aka The Kirb Starter Pack**

They’re files that have dots in them. May be useful to you, but mostly this is for me.

How to use: Clone this repo to somewhere like ~/.dotfiles. Then, symlink files in your home directory to files from this repo.


text:
# altcc-rpm-macros
RPM macros for creating AltCCRPM packages.  The macros are:

## altcc_init
Intializes the AltCCRPM macros.  Call before Name.
Usage:
```
%{?altcc_init:altcc_init -n <name> -v <version>}
```
or
```
%global shortname <name>
%global ver <version>
%{?altcc_init}
```
### Options:
-  -p prefix - Alternate prefix name
-  -v version - Version of package (or use %{ver})
-  -V version - Version of modulefile (defaults to %{version})
-  -f - Use full compiler version for package name/prefix
-  -F - Use full MPI version for package name/prefix

## altcc_pkg_suffix
Expands to a suffix containing the version of the main package, the name and version of the compiler, and the name and version of the MPI library used if applicable.  Add %{?altcc_pkg_suffix} to Name.
```
Name: %{shortname}%{?altcc_pkg_suffix}
```

## altcc_name_suffix
Expands to a suffix containing the version of the main package, and the name and version of the compiler used.  Add %{?altcc_name_suffix} to Name of packages as an alternative to %{?altcc_pkg_suffix} that do not have MPI versions.  Not strictly necessary if the package is not built with an MPI module loaded.

## altcc_dep_suffix
Expands to a suffix containting the name and version of the compiler, and the name and version of the MPI library used if applicable.  Add %{?altcc_dep_suffix} to the name of any dependencies that have altcc versions.

## altcc_cc_dep_suffix
Expands to a suffix containting the name and version of the compiler used.  Add %{?altcc_cc_dep_suffix} to the name of any dependencies that have altcc versions, but no MPI versions.

## altcc
True if building in AltCCRPM mode (COMPILER_NAME set).  False otherwise.  Use to conditionalize the spec, e.g.: `%{!?altcc:BuildRequires: gcc-fortran}` or `%{?altcc:module load hdf5}`

## altcc_reqmodules
Expands to `Requires: environment(modules)`.  Add to the package that contains the environment module file if needed.

## altcc_provide
Expands to version-less provides for ease of installing the latest version of a package, e.g. install hdf5-intel-openmpi.  Add to each package definition.  Takes a sub-package name as an arguement and can take -n option change the base package name.  Usage: `%?altcc_provide` or `%{?altcc:%altcc_provide [-n name] [name]}`

## altcc_writemodule
Used in %install to write the environment module from the source.  Takes the source as an argument: `%{?altcc:%altcc_writemodule %SOURCE2}`

## altcc_doc
Used in %install to create %{_defaultdocdir}.  May be needed for proper directory ownership in files with -d option to %altcc_files

## altcc_license
Used in %install to create %{_licensedir}.  Needed for proper directory ownership in files with -l option to %altcc_files

## altcc_files
Emits %dir ownership of the install tree.  Takes a list of directories, e.g.:
```
%{?altcc:%altcc_files -lm %{_bindir} %{_libdir} %{_mandir}/man1}
```
Add a "-d" option to the package(s) that contain %doc files.  You may need to also call %{?altcc:%altcc_doc} in %install.
Add a "-l" option to the package(s) that contain %license files.  Be sure to also call %{?altcc:%altcc_license} in %install.
Add a "-m" option to the package that contains the module file.  This is generally the main package unless there is a -libs sub-package.
Only the unique leaf trees need to be specified.  Directories between the install prefix and the given directories will be owned automatically as well.

## altcc_reqmpi
Expands to a requires on the current version of the MPI development package.  Add to -devel pacakges.

## altcc_with_mpi
True if buildwith with MPI, false if not.

## altcc_cc_name
Same as $COMPILER_NAME

## altcc_mpi_name
Same as $MPI_NAME

license: MIT

repository: altccrpms/altcc-rpm-macros

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: altccrpms/altcc-rpm-macros


text:
Facebook
==========

![menu](icon.png)

This section redirects you to the Splynx Facebook page:

https://www.facebook.com/IspFramework

![Facebook](facebook.png)

Once you've logged into Facebook, please feel free to like our page and access all the information we post thereon.

repository: splynx/docs

gha_license_id: MIT

repo_name: splynx/docs


text:
# IamUserGroup

User Group provides a way to assign permissions to a group of users based on the IdP attributes received after authentication.
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**name** | **str** | The name of the user group which the dynamic user belongs to.    | [optional]
**idp** | [**IamIdp**](.md) |  | [optional]
**idpreference** | [**IamIdpReference**](.md) |  | [optional]
**permissions** | [**list[IamPermission]**](IamPermission.md) | A reference to a iamPermission resource. When the $expand query parameter is specified, the referenced resource is returned inline. Permissions assigned to the user group. Permission provides a way to assign roles to a user or user group to perform operations on object hierarchy.  | [optional]
**qualifier** | [**IamQualifier**](.md) |  | [optional]
**users** | [**list[IamUser]**](IamUser.md) | A reference to a iamUser resource. When the $expand query parameter is specified, the referenced resource is returned inline. Users logged in using this user group.  | [optional] [readonly]

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

repository: CiscoUcs/intersight-python

gha_language: Python

repo_name: CiscoUcs/intersight-python


text:
You can add _attributes_ to a tag. Attributes indicate that a certain thing has a certain value:
* A ```p``` tag might have ```width``` (attribute name) of ```100px``` (attribute value).
* An ```input``` tag might have ```type``` (attribute name) of ```date``` (attribute value).

As a side note, measurements such as width and height are written in units called _pixels_. 100 pixels would be about an inch. In HTML, when something is XYZ pixels, we write it as ```XYZpx```, with a "px" at the end; for example, ```50px```.

Here are some attributes:

            Name
            Definition
            Example

width	Width of a element	width="100px"

height	Height of an element	height="100px"

The easiest way to learn attributes is through concrete examples. Let's start with a tag with no attributes:
```
<button>Hi!</button>
```
Say we want the button to have a width of 500 pixels. That means we need to use the ```width``` attribute and set it to ```500px```.
```
<button width="500px">Hi!</button>
```
Let's add another attribute: ```height``` of ```200px```.
```
<button width="500px" height="200px">Hi!</button>
```

A few things to note:
* Spaces are important. Notice where the spaces are and aren't. When there are multiple attributes, they must be separated by spaces. There are no spaces next to the equals sign.
* Double quotes ```"``` surround the attribute value.
* Attributes go into the opening tag (the ```<button>``` part), not the closing tag (the ```</button>``` part with a ```/``` in it).

So all of these are wrong:
```
<buttonwidth="500px">Hi!</button>
<button width=500px>Hi!</button>
<button>Hi!</button width="500px">
```

repository: Chimoe/html-editor

repo_name: Chimoe/html-editor


text:
---
layout: default
---

# 1998-01-28 - Re: Spyking snips: Police MDT's + cia/russian spying

## Header Data

From: David Honig<EMAIL_ADDRESS>To: Ray Arachelian<EMAIL_ADDRESS>Message Hash: ac1a71df1a7334db901400ded52d664467be1ef419e1052a2b926e2524164cba

Message ID<EMAIL_ADDRESS>Reply To<EMAIL_ADDRESS>UTC Datetime: 1998-01-28 19:21:33 UTC

Raw Date: Thu, 29 Jan 1998 03:21:33 +0800

## Raw message

```
{% raw  %}From: David Honig<EMAIL_ADDRESS>Date: Thu, 29 Jan 1998 03:21:33 +0800
To: Ray Arachelian<EMAIL_ADDRESS>Subject: Re: Spyking snips: Police MDT's + cia/russian spying
In-Reply-To<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>MIME-Version: 1.0
Content-Type: text/plain

At 01:03 PM 1/28/98 -0500, Ray Arachelian wrote:
>2)From: "Brandon Robinson"<EMAIL_ADDRESS>>Subject: Re: Monitoring MDT's
>
>>14)From: "self destruct"<EMAIL_ADDRESS>>>Subject: Monitoring MDT's
>>hi all,....i am wondering if there is a way to monitor police MDT's
>>(mobile display terminals)
>>i have the frq. that they use but i dont know how to hook up a scanner to
>>p/c. any thoughts would be appreciated thank you
>
>Since no one else seemed to respond to this, I guess I will...first off
>M.D.T. stands for (Mobile Data Terminals), I got this posting off some
>group I can't really remeber where from, but it is informative, and was
>the
>subject of a Feb, '97 "911Dispatcher Magazine" story. It should answer all
>of your questions, I also have a list of some places where you can buy the
>unit pre-made, or a kit to make your own. I have left the Source code out
>on purpose as it is rather lengthy, if you want it I can send it to you.
>
>-BBR
>----------------------- Begin quoted article ----------------------
>
>>From<EMAIL_ADDRESS>Mon Dec 23 23:11:43 EST 1996
>Article: 44420 of alt.radio.scanner
>Subject: MDT stuff
>
>Greetings one and all,
>
>Have you ever lusted to decode Mobile Data Terminal (MDT)
>tranmissions? Have you ever wanted to see the same NCIC and motor
>vehicle information that law enforcement officers see? Have you ever
>wanted to see what officers send to each other over "private" channels?
>And all this with an interface you can build with only a few dollars
>worth of parts from your local radio shack?
>
>If so this posting might be your rendevous with destiny. The tail
>end of this posting includes the source code of a program that decodes
>and displays MDT messages. It stores roughly 30k of messages in a buffer
>and then writes the whole buffer to a file called "data.dat" before
>terminating. The program may be interrupted at any time by pressing any
>key (don't use control-c) at which point it writes the partially filled
>buffer to "data.dat". This program only works for systems built by
>Motorola using the MDC4800 tranmission protocol. This accounts for a
>large fraction of public service MDT systems as well other private
>systems.
>
>The existence of this program is ample evidence that Motorola has
>misrepresented its MDT systems when it marketed them as a secure means
>of communcications. The interested reader will soon discover that these
>systems do not use any form of encryption. Security concerns instead
>have been dealt with by using a code. "And what might this code be
>called?" asks the reader. The code turns out to be plain ASCII. What
>follows is a brief description of how the program and the MDC4800
>protocol work. If you don't understand something go to your local
>library and check out a telecommunications theory book.
>
>1. The raw transmission rate is 4800 baud. The program's interrupt
>service routine simply keeps track of the time between transitions. If
>you're receiving a perfect signal this will be some multiple of 1/4800
>seconds which would then give you how many bits were high or low. Since
>this is not the best of all possible worlds the program instead does the
>following: transitions are used to synchronize a bit clock. One only
>samples whenever this clock is in the middle of the bit to produce the
>raw data stream. This greatly reduces jitter effects.
>
>2. Whenever a tranmitter keys up the MDC4800 protocol calls for bit
>synchronization (a sequence of<PHONE_NUMBER>101010....). In the program
>this will result in receive bit clock synchronization. There is no need
>to specifically look for the bit sync.
>
>3. Look for frame synchronization in raw bit stream so that data
>frames can be broken apart. Frame synchronization consists of a 40 bit
>sequence :<PHONE_NUMBER>001001001010100100010001101111. If this sequence is
>detected (or 35 out of 40 bits match up in the program) the system is
>idling and the next 112 bit data block is ignored by the program. If the
>inverted frame sync is detected one immediately knows that 112 bit data
>blocks will follow.
>
>4. Receive the 112 bit data block and undo the bit interleave. This
>means that one must reorder the bits in the following sequence : {0,16,
>32,48,64,80,96,1,17,33,49,65,81,97,2,18,34,...} if the orignal sequence
>were received as {0,1,2,3,4,5,6,7,8,...}.
>
>5. Check the convolutional error correcting code and count the
>number of errors. The error correcting code is rate 1/2 which means we
>will be left with 56 data bytes. The encoder is constructed so that the
>output consists of the original data bits interspersed with error
>correcting code. The generating polynomial used is :
>1 + X^-1 + X^-5 + X^-6
>Whenever an error is detected a counter is incremented. An attempt is
>made to correct some errors by finding the syndrome and looking for the
>bogus bit.
>
>6. Keep receiving 112 bit data blocks until either a new frame sync
>is found or two consecutive data blocks have an unacceptably large
>number of errors.
>
>7. Each data block consists of six data bytes; the last 8 bits are
>status bits that are simply ignored. The program shows the data in two
>columns - hexadecimal and ASCII. This data is kept in a buffer and is
>written to the file "data.dat" when the program terminates.
>
>8. What the program doesn't do: As a further check on the data
>there can be CRC checks. This varies from protocol to protocol so this
>program does not implement the CRC checks. Nonetheless, it is a
>relatively trivial matter to find the generating polynomial. The
>addresses, block counts, and message ID numbers are also quite easy to
>deduce.
>
>As you can see, there is no encryption. The bit interleave and the error
>correcting coding are there solely to insure the integrity of the ASCII
>data. Since any moron could have figured this stuff out from scratch one
>could argue that MDTs do not use "...modulation parameters intentionally
>witheld from the public". Therefore the Electronic Communications
>Privacy Act may not prohibit receiving MDT tranmissions. However,
>consult your attorney to make sure.
>
>The total disregard for security will no doubt annoy countless
>Motorola customers who were assured that their MDT systems were secure.
>Since Federal law states that NCIC information must be encrypted your
>local law enforcement agency might be forced to spend millions of
>dollars to upgrade to a secure MDT system - much to the delight of
>Motorola and its stockholders. Cynics might conclude that the release of
>a program like this is timed to coincide with the market saturation of
>existing MDT systems.
>
>Also, this program is completely free and it had better stay that
>way. What's to prevent you from adapting this into a kit and selling it
>>from classified ads in the back of Nuts and Volts? Nothing. But take a
>look at Motorola's patents sometime. You'll notice that this program
>does things that are covered by a shitload of patents. So any attempt to
>take financial advantage of this situtation will result in utter misery.
>
>Please keep the following in mind: this program only works with the
>first serial port (COM1). If your mouse or modem is there too bad. If
>you don't like this rewrite the program.
>
>------------------------------------------------------------------------
>What equipment do I need?
>
>RADIO SCANNER:
>
>A scanner that can receive 850-869 MHz. For those of you who don't
>know, this is the band where most business and public service trunked
>radio systems can be found along with the mobile data terminal
>transmissions. Chances are excellent that if your local authorities have
>a motorola trunked radio system and mobile data terminals that this is
>the frequency band in use. Very rarely will one find mobile data
>terminals in other frequency bands.
>
>Now for the fun part - your scanner should probably be modified to
>allow you to tap off directly from the discriminator output. If you wait
>until the signal has gone through the radio's internal audio filtering
>the waveform will likely be too heavily distorted to be decoded. This is
>exactly the same problem that our friends who like to decode pager
>transmissions run into - some of them have claimed they can only decode
>512 baud pager messages using the earphone output of their scanner.
>These mobile data terminal messages are 4800 baud so I don't think you
>have a snowball's chance in hell without using the discriminator output.
>If you don't know where to begin modifying your scanner you might want
>to ask those who monitor pagers how to get the discriminator output for
>your particular radio.
>
>COMPUTER/SCANNER INTERFACE
>
>Those of you who have already built your interface for decoding
>pager messages should be able to use that interface without any further
>ado. For those starting from scratch - you might want to check out
>packages intended for pager decoding such as PD203 and the interfaces
>they describe. The following excerpt gives an example of a decoder that
>should work just fine (lifted out of the PD203 POCSAG pager decoder
>shareware documentation):
>
>>
>> 0.1 uF |\ +12v
>> ---||-----------------------|- \|
>> AF IN | |741 \
>> ---- | | /--------------------- Data Out
>> | \ ------|+ /| | CTS (pin 5/8)
>> | / 100K | |/-12v | or DSR (pin 6/6)
>> | \ | |
>> GND / ----/\/\/\---- GND ------ GND (pin 7/5)
>> | | 100K
>> | \ N.B. Pin Numbers for com port are
>> GND / given as x/y, where x is for a 25
>> \ 10K way, y for a 9 way.
>> /
>> |
>> GND
>>
>> The above circuit is a Schmitt Trigger, having thresholds of about +/-
>1v.
>> If such a large threshold is not required, eg for a discriminator
>output,
>> then the level of positive feedback may be reduced by either reducing
>the
>> value of the 10K resistor or by increasing the value of the 100K
>feedback
>> resistor.
>>
>> The +/- 12v for the op-amp can be derived from unused signals on the COM
>> port (gives more like +/- 10v but works fine !):-
>>
>>
>> TxD (2/3) --------------|<-------------------------------------- -12v
>> | |
>> RTS (4/7) --------------|<-------- GND - -
>> | | _ + 10uF
>> --------->|------- - - |
>> Diodes 1N4148 | - + 10uF GND
>> | |
>> DTR (20/4) ------------->|-------------------------------------- +12v
>>
>
>If I were building this circuit I would strongly suggest tying the
>non-inverting (+) input of the op-amp to ground since you are working
>directly with the discriminator output and don't need a Schmitt trigger.
>All these parts or equivalents are easily available (even at your local
>Radio Shack which stocks the finest collection of components that have
>failed the manufacturer's quality control checks and supported by a
>sales staff that's always got the wrong answers to your questions).
>
>Also: DO NOT use the RI (ring indicator) as an input to the computer.
>-------------------------------------------------------------------------
>
>How do I check things?
>
>As a first step, I would get a package such as PD203 and use it to
>decode a few pages. If you can get that working you know that that your
>interface circuit is functioning correctly.
>
>If you are in a reasonably sized town you might be part of the
>ardis network. The ardis network is a nationwide commercial mobile data
>terminal network where one can send/receive E-mail messages from one's
>portable computer. It has been exclusively assigned the frequency of
>855.8375 MHz. Therefore, if you can hear digital bursts on this
>frequency you are basically guarranteed that these are MDC4800 type
>messages. You should be able to get stuff popping up on your screen
>although a lot of the messages will not be plain english.
>
>If your interface works but you can't seem to get any messages on
>the screen for a channel you know is a Motorola MDT system then it might
>be possible that your scanner/interface is putting out data with the
>polarity reversed. To check for this run the program with a command line
>arguement. When it runs you should an initial "Polarity reversed"
>message and hopefully then things will work out for you.
>
>Other than that: if this program doesn't work pester someone else
>who has got it working. Don't bother pestering the author(s) of this
>posting; the shit(s) aka "she/he/it (s)" are afraid of a thousand
>lawyers from Motorola descending like fleas to infest their pubic hair
>and accordingly have decided to remain forever anonymous. No doubt
>someone on the usenet who sees this post will know what to do with this
>program and also hopefully rewrite into a more user friendly form. When
>you do please don't forget to release the source code.
>-------------------------------------------------------------------------
>Future projects/nightmares you might want to think about:
>
>Certain MDT systems embed formatting information in the text in the
>form of ESC plus [ plus a few more bytes. Someone might want to decode
>these on the fly and format the output so it looks exactly the same way
>as the user sees it.
>
>Make it so that this program works with com ports other than COM1.
>
>Make it user friendly?
>
>Enlarge the data buffer from the current 30k.
>
>Give the output data file an unique name each time the program is
>run instead of "data.dat".
>
>How about sorting through the past traffic so that you only see
>traffic to a specified user?
>
>The program does not cut data blocks off in the display but it
>might add an extra one or two (which will display as all zeroes).
>Someone might want to make all those zeroes be shown as blanks instead.
>
>Write some real instructions.
>
>Now the more ambitous stuff:
>
>Are you half-way competent with RF engineering? Then listen in to
>the tranmissions from the mobile units back to the base station. That
>way you get everyone's password and user IDs as they log on to the MDT
>system. By this point you will no doubt have been able to figure out all
>of the appropriate communications protocols so you should think about
>getting your own transmitter up and running along with the necessary
>program modifications so that you can transmit MDT messages. The
>required transmitter can be very simple - for example, those masocists
>who want to start from scratch might want to special order an
>appropriate crystal (pulling the frequency with the computer's tranmit
>signal), building a frequency multiplier chain, and adding a one watt RF
>amplifier to top it all off (see the appropriate ARRL publications for
>more information on radio techniques). Now you can log in and look at
>the criminal records and motor vehicle information on anybody you can
>think of. Find out what your neigbors are hiding.  Find out where your former
>girl/boy friend is trying to hide from you. And on and on...
>Those with simpler tastes might want to simply transmit at the base
>station's frequency to any nearby MDT terminal - now you too can
>dispatch your local law enforcement agencies at the touch of your
>fingers!!! See your tax dollars at work tearing apart every seam of your
>neighbor's house. Or create strife and dissension in your local law
>enforcement agency as more and more officers come out of the closet
>using their MDTs trying to pick up fellow officers.
>
>There are municipalities that have put GPS receivers on all of
>their vehicles. Should it happen that the information is sent back over
>one of these networks you could have your computer give you a real-time
>map showing the position of every vehicle and how far away they are from
>you.
>
>Extend your knowledge to other data networks. Here you will want to
>look at the RAM mobile data network. It uses the MOBITEX protocol which
>is really easy to find information on. Since it is an 8 kilobaud GMSK
>signal there is a decent chance that you can use the interface described
>here. This transmission mode demmands much more from your equipment than
>MDT tranmissions. At the very least you must be much more careful to
>make sure you have adequate low frequency response. Despite this it is
>possible to receive and decode MOBITEX transmissions with a simple
>op-amp circuit!  The necessary program will
>be the proverbial exercise left for the reader. For better performance
>buy a dedicated MOBITEX modem chip and hook it up to your computer.
>
>----------------------------------------------------------------------
>
>A few words about the program:
>
>Remember - you must have your decoder hooked up to COM1. The RTS
>line will be positive and the DTR line negative but if you built the
>decoder with a bridge rectifier you really don't have to worry about
>their polarity. Stop the program by punching any key; don't use
>control-c or control-break!
>
>If you must reverse polarity run the program with any command line
>arguement (example: type in "mdt x" at the command line if your program
>is mdt.exe). You should then see the "Polarity Reversed." message pop up
>and hopefully things will then work.
>
>As far as compiling this - save the latter portion of this posting
>(the program listing) and feed it to a C compiler. Pretty much any C
>compiler from Borland should work. If you (Heaven Forbid) use a
>Microsoft C compiler you might need to rename some calls such as
>outport. Follow any special instructions for programs using their own
>interrupt service routines. This program is not object oriented. It also
>does not want anything whatsoever to do with Windows. Please don't even
>think about running this program under Windows. Finally, here it is:
>
>Good Luck and may God be with ya
>
>**************************************************************************
>
>Subject: More real spy stuff...
>
>Germany smuggled agent out of Russia
>
>Germany's Federal Intelligence Agency smuggled one of its Russian
>agents to safety while Russian President Boris Yeltsin and German
>Chancellor Helmut Kohl were meeting in Moscow last Nov., the weekly
>news magazine Focus said Monday. The BND had received a tip that a
>long-serving Russian agent was threatened and launched a cloak and
>dagger operation Nov. 29 to pull the agent out of Russia. The agent,
>a 32-year-old Army captain from the Russian town Samara with the code
>name "Coastal Fog," had given BND Russian military communications
>secrets for years. The rescue operation took place as Kohl and
>Yeltsin sat down for talks.
>
>Russian spies still fighting the Cold War in Britain
>
>Security sources say Moscow is as eager as ever to uncover
>defence secrets But now it is acting  more for economic than
>militaristic reasons. Security sources put Russian military
>espionage in Britain at the same level as it was in the 1980s.
>In a radio broadcast in December, President Yeltsin,
>speaking about Russia's intelligence aims, said:
>"Notwithstanding positive changes after the end of the
>Cold War, tough competition is still underway in the
>world. Competition for new technology and geo-political
>influence is increasing."
>
>Space Imagery Overhaul Aims at Better Data and Easier Access
>
>The shuttle flight is part of a massive modernization of the
>multibillion-dollar U.S. intelligence collection program. The goal
>is to compile a comprehensive view of the world from
>overhead -- using the shuttle, satellites, spy planes and missiles
>-- and to consolidate the data in a single computerized system
>accessible to civilian and military officials across the
>government.
>
>A CIA Target at Home in America
>By DANIEL C. TSANG
>Los Angeles Times January 18, 1998
>
>Because of me, the Central Intelligence Agency has had to concede it does
>spy on Americans. Just last month, the agency had to remove a denial
>posted
>on its Web site that it doesn't do this. For it kept a file on me
>throughout the 1980s and '90s--despite a law against political spying on
>Americans.
>Just before Christmas, the CIA revised its Web site. The new version says
>the CIA can keep files on Americans if they are suspected of espionage or
>international terrorism. But I am no spy or terrorist. The CIA conceded as
>much by settling my lawsuit, paying my lawyers some $46,000 and promising
>to expunge my file and never spy on my political activities in the
>future.
>
>
>
>
------------------------------------------------------------
      David Honig                   Orbit Technology
<EMAIL_ADDRESS>                Intaanetto Jigyoubu

``I'm going to the White House to get my presidential kneepads.''
ML Quote of the day      http://www.newsday.com/ap/rnmpwh0s.htm

{% endraw %}
```

## Thread

+ Return to [January 1998](/archive/1998/01)
+ Return to [February 1998](/archive/1998/02)

+ Return to "[David Honig <honig@otc.net>](/authors/david_honig_honig_at_otc_net_)"
+ Return to<EMAIL_ADDRESS>(Douglas L. Peterson)](/authors/fnorky_at_geocities_com_douglas_l_peterson_)"
+ Return to "[Ray Arachelian <sunder@sundernet.com>](/authors/ray_arachelian_sunder_at_sundernet_com_)"

+ 1998-01-28 (Thu, 29 Jan 1998 02:09:51 +0800) - [Spyking snips: Police MDT's + cia/russian spying](/archive/1998/01/f9623550cb970804d49865f20ecfa50ff3ba6a9e611bfea2c828259c12c3d26d) - _Ray Arachelian<EMAIL_ADDRESS>  + 1998-01-28 (Thu, 29 Jan 1998 03:21:33 +0800) - Re: Spyking snips: Police MDT's + cia/russian spying - _David Honig<EMAIL_ADDRESS>  + 1998-01-28 (Thu, 29 Jan 1998 03:22:00 +0800) - [Re: Spyking snips: Police MDT's + cia/russian spying](/archive/1998/01/7d78a0f8ab56d5acd2b9d67d0db95735c164bb36b8c508411aab35ed5f7c9353) - _David Honig<EMAIL_ADDRESS>  + 1998-02-02 (Tue, 3 Feb 1998 05:52:32 +0800) - [Re: Spyking snips: Police MDT's + cia/russian spying](/archive/1998/02/cf0e29cab1c5d4502ff4ea0dcac9bae3129952c365b3dadd0bf3164ab19a7b1e) -<EMAIL_ADDRESS>(Douglas L. Peterson)_


text:
---
layout: default
---

# Spring Configuration

Spring configuration is found in the ```src/main/resources/conf``` directory of the ```application``` module.

# Configuration Defaults and Overrides

```
application
    src/main/resources
	cougar-application.properties   <-- Optional properties file to set cougar property values
 					    for your application at a level below overrides
					    Will override service-defaults.properties but can still
					    be overridden by overrides.properties
					    Must have this exact name
        conf
            <spring config files>
            service-defaults.properties <-- default properties (incl. overrides of other modules)
                                            You can rename this file to anything you like, just
                                            update the property placeholder in the spring config.
launcher
    src/main/resources
        conf
            overrides.properties        <-- overrides to Cougar, application and other modules
```

Notes:

* Application defaults should enumerate sane deployment-scenario-neutral values (or the textual value
```MUST_BE_OVERRIDDEN```) for all your configuration items, appropriately commented
* Wherever ```src/main/resources``` is mentioned you can also put the same files in ```src/test/resources```, which will
take precedence over the ones in ```src/main/resources``` during the ```test``` phase of the module.

# Using Configuration Data in Your Module's Spring Assembly

Each and every Cougar module is assembled using its ```src/main/resources/conf/cougar-application-spring.xml``` file.
Within this file a ```PropertyConfigurer``` is defined that segregates and scopes your configuration data with the use of
a "property placeholder prefix", to avoid collisions with other modules' data.  The following definition is typical, and
is what the Cougar archetype gives you by default.

```
<bean class="com.betfair.cougar.util.configuration.PropertyConfigurer">
        <property name="defaultConfig" value="conf/<artifactId>-defaults.properties"/>
	<property name="configOverride" value="overrides.properties"/>
	<property name="placeholderPrefix" value="$MY_APPLICATION{"/>
    </bean>
```

Say you've defined the property ```magic.number``` in ```<artifactId>-defaults.properties``` and you want to use it in
the assembly - you reference it like so:

```
<property name="magicNumber" value="$MY_APPLICATION{magic.number}"/>
```

If you want to reference another module's configuration data in your assembly, you need to know its property placeholder
prefix.  If you depend on the module in your project, you can navigate to the depended-upon JAR and look inside it at
```src/main/resources/conf/cougar-application-spring.xml``` and look for the prefix there.

**It's strongly recommended that you change the property placeholder prefix from MY_APPLICATION to something more specific
to your module, to avoid collisions.**

# Static Cougar Config Overrides

Often you will find that there are a number of core Cougar settings which you always want set to a specific value,
regardless of environment. For this you can use a ```cougar-application.properties``` file, which is loaded prior to the
overrides file.

# Encrypted Property Values

Cougar supports encrypted property values via implementations of the ```StringEncryptor``` interface found in
[Jasypt](http://www.jasypt.org). To register an implementation of this interface you must create a [bootstrap](Using_Modules_Libraries_in_Cougar.html)
module, with the following bean definition:

```
    <bean parent="cougar.core.EncryptorRegisterer" lazy-init="false">
        <constructor-arg>
            <bean class="com.betfair.MyStringEncyptor"/>
        </constructor-arg>
    </bean>
```

**Note**: Cougar only supports a single encryptor, so any attempt to set 2 will fail.

# Cougar Framework Module Configuration

Those Cougar framework modules that have properties of interest and that can be over-ridden are documented separately.

repository: sbaychev/cougar-documentation

gha_language: CSS

repo_name: sbaychev/cougar-documentation


text:
# Example usage for Redux Multilanguage

## Prerequisite:
Your machine must already installed:
* NodeJS
* Yarn

## Commands:
* `yarn install`
* `yarn start`

repository: saigontechnology/redux-multilanguage

repo_name: saigontechnology/redux-multilanguage