Merge branch 'omaha_13.5.1' into omaha_13.5.2

Former-commit-id: 67f7a8db62 [formerly 67f7a8db62 [formerly cfd93a48150e8c559622e806e98362a51f19aee0]]
Former-commit-id: 282577d168
Former-commit-id: 877d672852
This commit is contained in:
Steve Harris 2013-08-15 12:55:24 -05:00
commit 850d0d54c6
19 changed files with 1395 additions and 2150 deletions

View file

@ -1001,7 +1001,8 @@ public class D2DTimeMatcher extends AbstractTimeMatcher {
} else if (rp.getProperties().isMapLayer() } else if (rp.getProperties().isMapLayer()
|| rp.getProperties().isSystemResource()) { || rp.getProperties().isSystemResource()) {
continue; continue;
} else if (rsc.getResourceData() instanceof IResourceGroup) { } else if (rsc != null
&& rsc.getResourceData() instanceof IResourceGroup) {
if (validateTimeMatchBasis(((IResourceGroup) rsc.getResourceData()) if (validateTimeMatchBasis(((IResourceGroup) rsc.getResourceData())
.getResourceList())) { .getResourceList())) {
return true; return true;

View file

@ -36,7 +36,7 @@ import com.raytheon.uf.common.time.util.TimeUtil;
* Initial creation * Initial creation
* May 7, 2013 1973 rferrel Changes to properly display Issue Time. * May 7, 2013 1973 rferrel Changes to properly display Issue Time.
* Aug 7, 2013 2243 jsanchez Set all the attributes of an AbstractWarningRecord and added an expiration string. Removed calendar object. * Aug 7, 2013 2243 jsanchez Set all the attributes of an AbstractWarningRecord and added an expiration string. Removed calendar object.
* * Aug 15,2013 2243 jsanchez Improved the expiration string off by one minute.
* </pre> * </pre>
* *
* @author rferrel * @author rferrel
@ -139,9 +139,11 @@ public class FollowupData extends WarningRecord {
StringBuilder rval = new StringBuilder(); StringBuilder rval = new StringBuilder();
long timeInMillis = SimulatedTime.getSystemTime().getMillis(); long timeInMillis = SimulatedTime.getSystemTime().getMillis();
if (status != WarningAction.COR) { if (status != WarningAction.COR) {
// Positive means not yet expired // use double to keep precision until it's casted to an integer
long diffMins = (record.getEndTime().getTimeInMillis() - timeInMillis) double diffMillis = record.getEndTime().getTimeInMillis()
/ TimeUtil.MILLIS_PER_MINUTE; - timeInMillis;
int diffMins = (int) Math.round(diffMillis
/ TimeUtil.MILLIS_PER_MINUTE);
if (diffMins == 0) { if (diffMins == 0) {
rval.append(" Expired"); rval.append(" Expired");
} else if (diffMins > 0) { } else if (diffMins > 0) {
@ -150,8 +152,12 @@ public class FollowupData extends WarningRecord {
rval.append(" Exp ").append(-diffMins).append(" min ago"); rval.append(" Exp ").append(-diffMins).append(" min ago");
} }
} else { } else {
long diffMins = (timeInMillis - record.getIssueTime() // use double to keep precision until it's casted to an integer
.getTimeInMillis()) / TimeUtil.MILLIS_PER_MINUTE; double diffMillis = timeInMillis
- record.getIssueTime().getTimeInMillis();
int diffMins = (int) Math.round(diffMillis
/ TimeUtil.MILLIS_PER_MINUTE);
if (diffMins == 0) { if (diffMins == 0) {
rval.append(" Just Issued"); rval.append(" Just Issued");
} else { } else {

View file

@ -69,6 +69,7 @@ import com.raytheon.uf.common.status.IUFStatusHandler;
import com.raytheon.uf.common.status.UFStatus; import com.raytheon.uf.common.status.UFStatus;
import com.raytheon.uf.common.status.UFStatus.Priority; import com.raytheon.uf.common.status.UFStatus.Priority;
import com.raytheon.uf.common.time.SimulatedTime; import com.raytheon.uf.common.time.SimulatedTime;
import com.raytheon.uf.common.time.TimeRange;
import com.raytheon.uf.common.time.util.TimeUtil; import com.raytheon.uf.common.time.util.TimeUtil;
import com.raytheon.uf.viz.core.IDisplayPaneContainer; import com.raytheon.uf.viz.core.IDisplayPaneContainer;
import com.raytheon.uf.viz.core.VizApp; import com.raytheon.uf.viz.core.VizApp;
@ -193,11 +194,11 @@ public class WarngenDialog extends CaveSWTDialog implements
final DateFormat df = new SimpleDateFormat("HH:mm EEE d-MMM"); final DateFormat df = new SimpleDateFormat("HH:mm EEE d-MMM");
private java.util.List<String> mapsLoaded = new ArrayList<String>(); private final java.util.List<String> mapsLoaded = new ArrayList<String>();
private Button okButton; private Button okButton;
private BulletListManager bulletListManager; private final BulletListManager bulletListManager;
private List bulletList; private List bulletList;
@ -277,7 +278,7 @@ public class WarngenDialog extends CaveSWTDialog implements
private boolean invalidFollowUpAction = false; private boolean invalidFollowUpAction = false;
private IWarngenObserver wed = new WarningSender(); private final IWarngenObserver wed = new WarningSender();
public WarngenDialog(Shell parentShell, WarngenLayer layer) { public WarngenDialog(Shell parentShell, WarngenLayer layer) {
super(parentShell, SWT.CLOSE | SWT.MODELESS | SWT.BORDER | SWT.TITLE, super(parentShell, SWT.CLOSE | SWT.MODELESS | SWT.BORDER | SWT.TITLE,
@ -480,7 +481,7 @@ public class WarngenDialog extends CaveSWTDialog implements
String defaultTemplate = warngenLayer.getDialogConfig() String defaultTemplate = warngenLayer.getDialogConfig()
.getDefaultTemplate(); .getDefaultTemplate();
if (defaultTemplate == null || defaultTemplate.equals("")) { if ((defaultTemplate == null) || defaultTemplate.equals("")) {
defaultTemplate = mainProducts.get(0).split("/")[1]; defaultTemplate = mainProducts.get(0).split("/")[1];
} }
@ -819,7 +820,7 @@ public class WarngenDialog extends CaveSWTDialog implements
createTextButtonEnabled = false; createTextButtonEnabled = false;
} else if (warngenLayer.getStormTrackState().mode == Mode.NONE) { } else if (warngenLayer.getStormTrackState().mode == Mode.NONE) {
createTextButtonEnabled = false; createTextButtonEnabled = false;
} else if (warngenLayer.getPolygon() == null } else if ((warngenLayer.getPolygon() == null)
|| warngenLayer.getPolygon().isEmpty()) { || warngenLayer.getPolygon().isEmpty()) {
str += WarngenConstants.INSTRUCTION_NO_SHADED_AREA; str += WarngenConstants.INSTRUCTION_NO_SHADED_AREA;
createTextButtonEnabled = false; createTextButtonEnabled = false;
@ -888,9 +889,9 @@ public class WarngenDialog extends CaveSWTDialog implements
newYes = true; newYes = true;
} else if (act == WarningAction.EXT) { } else if (act == WarningAction.EXT) {
extYes = true; extYes = true;
} else if (act == WarningAction.CON } else if ((act == WarningAction.CON)
|| act == WarningAction.CAN || (act == WarningAction.CAN)
|| act == WarningAction.EXP) { || (act == WarningAction.EXP)) {
follow = true; follow = true;
} else if (act == WarningAction.COR) { } else if (act == WarningAction.COR) {
corYes = true; corYes = true;
@ -935,6 +936,7 @@ public class WarngenDialog extends CaveSWTDialog implements
// Select the previously selected item. // Select the previously selected item.
invalidFollowUpAction = false; invalidFollowUpAction = false;
if (currentSelection != null) { if (currentSelection != null) {
// isValid checks if the current selection is still in the list
boolean isValid = false; boolean isValid = false;
for (int i = 0; i < updateListCbo.getItemCount(); i++) { for (int i = 0; i < updateListCbo.getItemCount(); i++) {
if (updateListCbo.getItem(i).startsWith( if (updateListCbo.getItem(i).startsWith(
@ -953,7 +955,9 @@ public class WarngenDialog extends CaveSWTDialog implements
// up option could be removed due to an action such as a CAN or an // up option could be removed due to an action such as a CAN or an
// EXP. If an action removes the follow up, then no warning message // EXP. If an action removes the follow up, then no warning message
// should be displayed. // should be displayed.
if (!timeRange.contains(SimulatedTime.getSystemTime().getTime())) { if (!isValid
&& !timeRange.contains(SimulatedTime.getSystemTime()
.getTime())) {
invalidFollowUpAction = true; invalidFollowUpAction = true;
preventFollowUpAction(currentSelection); preventFollowUpAction(currentSelection);
} }
@ -1041,13 +1045,13 @@ public class WarngenDialog extends CaveSWTDialog implements
return; return;
} }
if (followupData != null if ((followupData != null)
&& WarningAction.valueOf(followupData.getAct()) == WarningAction.NEW) { && (WarningAction.valueOf(followupData.getAct()) == WarningAction.NEW)) {
redrawFromWarned(); redrawFromWarned();
} }
if ((followupData == null || (WarningAction.valueOf(followupData if (((followupData == null) || ((WarningAction.valueOf(followupData
.getAct()) == WarningAction.CON && warngenLayer .getAct()) == WarningAction.CON) && warngenLayer
.conWarnAreaChanged(followupData))) .conWarnAreaChanged(followupData)))
&& !polygonLocked) { && !polygonLocked) {
redrawFromWarned(); redrawFromWarned();
@ -1062,6 +1066,7 @@ public class WarngenDialog extends CaveSWTDialog implements
try { try {
pmd.run(false, false, new IRunnableWithProgress() { pmd.run(false, false, new IRunnableWithProgress() {
@Override
public void run(IProgressMonitor monitor) public void run(IProgressMonitor monitor)
throws InvocationTargetException, InterruptedException { throws InvocationTargetException, InterruptedException {
try { try {
@ -1131,7 +1136,7 @@ public class WarngenDialog extends CaveSWTDialog implements
private boolean checkDamSelection() { private boolean checkDamSelection() {
if (bulletListManager.isDamNameSeletcted() if (bulletListManager.isDamNameSeletcted()
&& bulletListManager.isDamCauseSelected() == false) { && (bulletListManager.isDamCauseSelected() == false)) {
/* /*
* On WES 'Instructions' became 'Warning' but didn't prevent a * On WES 'Instructions' became 'Warning' but didn't prevent a
* created text * created text
@ -1152,9 +1157,9 @@ public class WarngenDialog extends CaveSWTDialog implements
} }
private void updateWarngenUIState(String result) { private void updateWarngenUIState(String result) {
if (VtecUtil.parseMessage(result) != null if ((VtecUtil.parseMessage(result) != null)
&& WarningAction.valueOf(VtecUtil.parseMessage(result) && (WarningAction.valueOf(VtecUtil.parseMessage(result)
.getAction()) != WarningAction.NEW) { .getAction()) != WarningAction.NEW)) {
// TODO Use warningsArrived method to set old // TODO Use warningsArrived method to set old
// polygon and warning area // polygon and warning area
warngenLayer.state.setOldWarningPolygon((Polygon) warngenLayer warngenLayer.state.setOldWarningPolygon((Polygon) warngenLayer
@ -1169,7 +1174,7 @@ public class WarngenDialog extends CaveSWTDialog implements
// An error dialog is to appear if a user tries to press Create Text // An error dialog is to appear if a user tries to press Create Text
// again after a product was issued.AWIPS I does not auto update their // again after a product was issued.AWIPS I does not auto update their
// update list, this is their solution. // update list, this is their solution.
if (followupData != null && totalSegments > 1) { if ((followupData != null) && (totalSegments > 1)) {
multiSegmentMessage(followupData.getEquvialentString()); multiSegmentMessage(followupData.getEquvialentString());
return false; return false;
} }
@ -1237,8 +1242,8 @@ public class WarngenDialog extends CaveSWTDialog implements
warngenLayer.getStormTrackState().mode = Mode.TRACK; warngenLayer.getStormTrackState().mode = Mode.TRACK;
warngenLayer.lastMode = Mode.DRAG_ME; warngenLayer.lastMode = Mode.DRAG_ME;
} }
if (warngenLayer.getConfiguration().isTrackEnabled() == false if ((warngenLayer.getConfiguration().isTrackEnabled() == false)
|| warngenLayer.getConfiguration().getPathcastConfig() == null) { || (warngenLayer.getConfiguration().getPathcastConfig() == null)) {
warngenLayer.getStormTrackState().setInitiallyMotionless(true); warngenLayer.getStormTrackState().setInitiallyMotionless(true);
} }
warngenLayer.resetInitialFrame(); warngenLayer.resetInitialFrame();
@ -1258,8 +1263,8 @@ public class WarngenDialog extends CaveSWTDialog implements
* Action for when something is selected from the backup site combo * Action for when something is selected from the backup site combo
*/ */
private void backupSiteSelected() { private void backupSiteSelected() {
if (backupSiteCbo.getSelectionIndex() >= 0 if ((backupSiteCbo.getSelectionIndex() >= 0)
&& backupSiteCbo.getItemCount() > 0) { && (backupSiteCbo.getItemCount() > 0)) {
warngenLayer.setBackupSite(backupSiteCbo.getItems()[backupSiteCbo warngenLayer.setBackupSite(backupSiteCbo.getItems()[backupSiteCbo
.getSelectionIndex()]); .getSelectionIndex()]);
// Refresh template // Refresh template
@ -1367,8 +1372,8 @@ public class WarngenDialog extends CaveSWTDialog implements
DamInfoBullet damBullet = bulletListManager.getSelectedDamInfoBullet(); DamInfoBullet damBullet = bulletListManager.getSelectedDamInfoBullet();
if (damBullet != null) { if (damBullet != null) {
if (damBullet.getCoords() == null if ((damBullet.getCoords() == null)
|| damBullet.getCoords().length() == 0) { || (damBullet.getCoords().length() == 0)) {
damBreakInstruct = "LAT...LON can not be found in 'coords' parameter"; damBreakInstruct = "LAT...LON can not be found in 'coords' parameter";
} else { } else {
ArrayList<Coordinate> coordinates = new ArrayList<Coordinate>(); ArrayList<Coordinate> coordinates = new ArrayList<Coordinate>();
@ -1381,8 +1386,8 @@ public class WarngenDialog extends CaveSWTDialog implements
if (m.find()) { if (m.find()) {
m = latLonPtrn.matcher(damBullet.getCoords()); m = latLonPtrn.matcher(damBullet.getCoords());
while (m.find()) { while (m.find()) {
coordinates.add(new Coordinate(-1 coordinates.add(new Coordinate((-1 * Double
* Double.parseDouble(m.group(2)) / 100, Double .parseDouble(m.group(2))) / 100, Double
.parseDouble(m.group(1)) / 100)); .parseDouble(m.group(1)) / 100));
} }
@ -1448,8 +1453,9 @@ public class WarngenDialog extends CaveSWTDialog implements
private void changeTemplate(String templateName) { private void changeTemplate(String templateName) {
// DR 14515 // DR 14515
if (templateName.equals(warngenLayer.getTemplateName())) if (templateName.equals(warngenLayer.getTemplateName())) {
return; return;
}
String lastAreaSource = warngenLayer.getConfiguration() String lastAreaSource = warngenLayer.getConfiguration()
.getHatchedAreaSource().getAreaSource(); .getHatchedAreaSource().getAreaSource();
@ -1503,9 +1509,9 @@ public class WarngenDialog extends CaveSWTDialog implements
.getSelection() ? DisplayType.POLY : DisplayType.POINT; .getSelection() ? DisplayType.POLY : DisplayType.POINT;
} }
warngenLayer.getStormTrackState().setInitiallyMotionless( warngenLayer.getStormTrackState().setInitiallyMotionless(
warngenLayer.getConfiguration().isTrackEnabled() == false (warngenLayer.getConfiguration().isTrackEnabled() == false)
|| warngenLayer.getConfiguration() || (warngenLayer.getConfiguration()
.getPathcastConfig() == null); .getPathcastConfig() == null));
if (warngenLayer.getStormTrackState().isInitiallyMotionless()) { if (warngenLayer.getStormTrackState().isInitiallyMotionless()) {
warngenLayer.getStormTrackState().speed = 0; warngenLayer.getStormTrackState().speed = 0;
warngenLayer.getStormTrackState().angle = 0; warngenLayer.getStormTrackState().angle = 0;
@ -1608,10 +1614,10 @@ public class WarngenDialog extends CaveSWTDialog implements
// (AWIPS 1) // (AWIPS 1)
if (warngenLayer.state.followupData != null) { if (warngenLayer.state.followupData != null) {
if (data.equals(warngenLayer.state.followupData)) { if (data.equals(warngenLayer.state.followupData)) {
if (WarningAction if ((WarningAction
.valueOf(warngenLayer.state.followupData .valueOf(warngenLayer.state.followupData
.getAct()) == WarningAction.CON .getAct()) == WarningAction.CON)
&& totalSegments > 1) { && (totalSegments > 1)) {
sameProductMessage(warngenLayer.state.followupData sameProductMessage(warngenLayer.state.followupData
.getEquvialentString()); .getEquvialentString());
} }
@ -1678,7 +1684,7 @@ public class WarngenDialog extends CaveSWTDialog implements
if (warngenLayer.getConfiguration().getEnableDamBreakThreat()) { if (warngenLayer.getConfiguration().getEnableDamBreakThreat()) {
for (BulletActionGroup bulletActionGroup : warngenLayer for (BulletActionGroup bulletActionGroup : warngenLayer
.getConfiguration().getBulletActionGroups()) { .getConfiguration().getBulletActionGroups()) {
if (bulletActionGroup.getAction() != null if ((bulletActionGroup.getAction() != null)
&& bulletActionGroup.getAction().equals( && bulletActionGroup.getAction().equals(
data.getAct())) { data.getAct())) {
warngenLayer.getConfiguration().setDamInfoBullets( warngenLayer.getConfiguration().setDamInfoBullets(
@ -1699,14 +1705,14 @@ public class WarngenDialog extends CaveSWTDialog implements
bulletListManager.recreateBulletsFromFollowup( bulletListManager.recreateBulletsFromFollowup(
warngenLayer.getConfiguration(), action, oldWarning); warngenLayer.getConfiguration(), action, oldWarning);
if (bulletListManager.isDamNameSeletcted() if (bulletListManager.isDamNameSeletcted()
&& action != WarningAction.NEW) { && (action != WarningAction.NEW)) {
setPolygonLocked(true); setPolygonLocked(true);
} }
} }
refreshBulletList(); refreshBulletList();
recreateUpdates(); recreateUpdates();
if (action == null || action == WarningAction.NEW if ((action == null) || (action == WarningAction.NEW)
|| action == WarningAction.EXT) { || (action == WarningAction.EXT)) {
recreateDurations(durationList); recreateDurations(durationList);
} }
} }
@ -1741,7 +1747,7 @@ public class WarngenDialog extends CaveSWTDialog implements
} }
private void changeSelected() { private void changeSelected() {
if (validPeriodDlg == null || validPeriodDlg.isDisposed()) { if ((validPeriodDlg == null) || validPeriodDlg.isDisposed()) {
validPeriodDlg = new ValidPeriodDialog(shell, startTime, endTime); validPeriodDlg = new ValidPeriodDialog(shell, startTime, endTime);
validPeriodDlg.setCloseCallback(new ICloseCallback() { validPeriodDlg.setCloseCallback(new ICloseCallback() {
@ -1846,6 +1852,7 @@ public class WarngenDialog extends CaveSWTDialog implements
public void run() { public void run() {
getDisplay().syncExec(new Runnable() { getDisplay().syncExec(new Runnable() {
@Override
public void run() { public void run() {
try { try {
changeStartEndTimes(); changeStartEndTimes();
@ -1872,6 +1879,7 @@ public class WarngenDialog extends CaveSWTDialog implements
public void run() { public void run() {
getDisplay().syncExec(new Runnable() { getDisplay().syncExec(new Runnable() {
@Override
public void run() { public void run() {
try { try {
recreateUpdates(); recreateUpdates();
@ -1887,7 +1895,7 @@ public class WarngenDialog extends CaveSWTDialog implements
// Update the follow up list every minute // Update the follow up list every minute
long currentTimeInSeconds = SimulatedTime.getSystemTime().getMillis() / 1000; long currentTimeInSeconds = SimulatedTime.getSystemTime().getMillis() / 1000;
long secondsToNextMinute = 0; long secondsToNextMinute = 0;
if (currentTimeInSeconds % 60 != 0) { if ((currentTimeInSeconds % 60) != 0) {
secondsToNextMinute = 60 - (currentTimeInSeconds % 60); secondsToNextMinute = 60 - (currentTimeInSeconds % 60);
} }
timer.schedule(recreateUpdatesTask, secondsToNextMinute * 1000, timer.schedule(recreateUpdatesTask, secondsToNextMinute * 1000,
@ -1909,7 +1917,7 @@ public class WarngenDialog extends CaveSWTDialog implements
FollowupData fd = (FollowupData) updateListCbo FollowupData fd = (FollowupData) updateListCbo
.getData(updateListCbo.getItem(updateListCbo .getData(updateListCbo.getItem(updateListCbo
.getSelectionIndex())); .getSelectionIndex()));
if (fd == null if ((fd == null)
|| (WarningAction.valueOf(fd.getAct()) == WarningAction.NEW)) { || (WarningAction.valueOf(fd.getAct()) == WarningAction.NEW)) {
startTime = TimeUtil.newCalendar(); startTime = TimeUtil.newCalendar();
endTime = DurationUtil.calcEndTime(this.startTime, duration); endTime = DurationUtil.calcEndTime(this.startTime, duration);
@ -2179,7 +2187,7 @@ public class WarngenDialog extends CaveSWTDialog implements
* Set the shell to visible and then move it on top of the CAVE dialog. * Set the shell to visible and then move it on top of the CAVE dialog.
*/ */
public void showDialog(boolean show) { public void showDialog(boolean show) {
if (shell != null && shell.isDisposed() == false) { if ((shell != null) && (shell.isDisposed() == false)) {
if (show) { if (show) {
if (shell.isVisible() == false) { if (shell.isVisible() == false) {
shell.setVisible(true); shell.setVisible(true);
@ -2266,8 +2274,9 @@ public class WarngenDialog extends CaveSWTDialog implements
Polygon rval = gf.createPolygon(gf.createLinearRing(points Polygon rval = gf.createPolygon(gf.createLinearRing(points
.toArray(new Coordinate[points.size()])), null); .toArray(new Coordinate[points.size()])), null);
if (adjusted) if (adjusted) {
oldWarning.setGeometry(rval); oldWarning.setGeometry(rval);
}
boolean invalidPolyFlag = false; boolean invalidPolyFlag = false;
if (rval.isValid() == false) { if (rval.isValid() == false) {
@ -2292,10 +2301,12 @@ public class WarngenDialog extends CaveSWTDialog implements
int size = coords.length; int size = coords.length;
java.util.List<Coordinate> coords2 = new ArrayList<Coordinate>(); java.util.List<Coordinate> coords2 = new ArrayList<Coordinate>();
coords2.add(coords[0]); coords2.add(coords[0]);
for (int i = 1; i < size; i++) for (int i = 1; i < size; i++) {
if (Math.abs(coords[i].x - coords[i - 1].x) > MIN_LATLON_DIFF if ((Math.abs(coords[i].x - coords[i - 1].x) > MIN_LATLON_DIFF)
|| Math.abs(coords[i].y - coords[i - 1].y) > MIN_LATLON_DIFF) || (Math.abs(coords[i].y - coords[i - 1].y) > MIN_LATLON_DIFF)) {
coords2.add(coords[i]); coords2.add(coords[i]);
}
}
size = coords2.size(); size = coords2.size();
Coordinate[] coords3 = coords2.toArray(new Coordinate[size]); Coordinate[] coords3 = coords2.toArray(new Coordinate[size]);
return coords3; return coords3;
@ -2308,7 +2319,7 @@ public class WarngenDialog extends CaveSWTDialog implements
double diffx1, diffx2, diffy1, diffy2; double diffx1, diffx2, diffy1, diffy2;
double ratio1, ratio2; double ratio1, ratio2;
boolean adjusted = false; boolean adjusted = false;
for (int i = 2; i < coords.length - 2; i++) { for (int i = 2; i < (coords.length - 2); i++) {
diffx1 = coords[i - 1].x - coords[i].x; diffx1 = coords[i - 1].x - coords[i].x;
if (Math.abs(diffx1) > MIN_LATLON_DIFF) { if (Math.abs(diffx1) > MIN_LATLON_DIFF) {
ratio1 = (coords[i - 1].y - coords[i].y) / diffx1; ratio1 = (coords[i - 1].y - coords[i].y) / diffx1;
@ -2316,8 +2327,8 @@ public class WarngenDialog extends CaveSWTDialog implements
if (Math.abs(diffx2) > MIN_LATLON_DIFF) { if (Math.abs(diffx2) > MIN_LATLON_DIFF) {
ratio2 = (coords[i].y - coords[i + 1].y) / diffx2; ratio2 = (coords[i].y - coords[i + 1].y) / diffx2;
if (Math.abs(ratio1 - ratio2) < MIN_DIFF) { if (Math.abs(ratio1 - ratio2) < MIN_DIFF) {
if (diffx1 > 0.0 && diffx2 > 0.0 || diffx1 < 0.0 if (((diffx1 > 0.0) && (diffx2 > 0.0))
&& diffx2 < 0.0) { || ((diffx1 < 0.0) && (diffx2 < 0.0))) {
// three vertices on a straight line. Not overlaid. // three vertices on a straight line. Not overlaid.
} else { } else {
// two segments overlaid // two segments overlaid
@ -2335,8 +2346,8 @@ public class WarngenDialog extends CaveSWTDialog implements
if (Math.abs(diffy2) > MIN_LATLON_DIFF) { if (Math.abs(diffy2) > MIN_LATLON_DIFF) {
ratio2 = (coords[i].x - coords[i + 1].x) / diffy2; ratio2 = (coords[i].x - coords[i + 1].x) / diffy2;
if (Math.abs(ratio1 - ratio2) < MIN_DIFF) { if (Math.abs(ratio1 - ratio2) < MIN_DIFF) {
if (diffy1 > 0.0 && diffy2 > 0.0 || diffy1 < 0.0 if (((diffy1 > 0.0) && (diffy2 > 0.0))
&& diffy2 < 0.0) { || ((diffy1 < 0.0) && (diffy2 < 0.0))) {
// three vertices on a straight line. Not overlaid. // three vertices on a straight line. Not overlaid.
} else { } else {
// two segments overlaid // two segments overlaid
@ -2368,63 +2379,71 @@ public class WarngenDialog extends CaveSWTDialog implements
if (Math.abs(diffx) > MIN_LATLON_DIFF) { if (Math.abs(diffx) > MIN_LATLON_DIFF) {
if (coords[i - 1].y > coords[i].y) { if (coords[i - 1].y > coords[i].y) {
factor = 1; factor = 1;
} else } else {
factor = -1; factor = -1;
}
if (diffx < 0.0) { if (diffx < 0.0) {
coords[i + 1].x -= factor * adjustedValue; coords[i + 1].x -= factor * adjustedValue;
} else { } else {
coords[i - 1].x += factor * adjustedValue; coords[i - 1].x += factor * adjustedValue;
} }
if (i == n - 3) if (i == (n - 3)) {
coords[0].x = coords[i - 1].x; coords[0].x = coords[i - 1].x;
}
} else { } else {
diffx = coords[i + 2].x - coords[i + 1].x; diffx = coords[i + 2].x - coords[i + 1].x;
if (Math.abs(diffx) > MIN_LATLON_DIFF) { if (Math.abs(diffx) > MIN_LATLON_DIFF) {
if (coords[i + 1].y > coords[i].y) { if (coords[i + 1].y > coords[i].y) {
factor = -1; factor = -1;
} else } else {
factor = 1; factor = 1;
}
if (diffx < 0.0) { if (diffx < 0.0) {
coords[i - 1].x -= factor * adjustedValue; coords[i - 1].x -= factor * adjustedValue;
} else { } else {
coords[i + 1].x += factor * adjustedValue; coords[i + 1].x += factor * adjustedValue;
} }
if (i == n - 3) if (i == (n - 3)) {
coords[0].x = coords[i - 1].x; coords[0].x = coords[i - 1].x;
} }
} }
}
} else { } else {
// adjust latitude // adjust latitude
double diffy = coords[i - 2].y - coords[i - 1].y; double diffy = coords[i - 2].y - coords[i - 1].y;
if (Math.abs(diffy) > MIN_LATLON_DIFF) { if (Math.abs(diffy) > MIN_LATLON_DIFF) {
if (coords[i - 1].x > coords[i].x) { if (coords[i - 1].x > coords[i].x) {
factor = -1; factor = -1;
} else } else {
factor = 1; factor = 1;
}
if (diffy > 0.0) { if (diffy > 0.0) {
coords[i + 1].y -= factor * adjustedValue; coords[i + 1].y -= factor * adjustedValue;
} else { } else {
coords[i - 1].y += factor * adjustedValue; coords[i - 1].y += factor * adjustedValue;
} }
if (i == n - 3) if (i == (n - 3)) {
coords[0].y = coords[i - 1].y; coords[0].y = coords[i - 1].y;
}
} else { } else {
diffy = coords[i + 2].y - coords[i + 1].y; diffy = coords[i + 2].y - coords[i + 1].y;
if (Math.abs(diffy) > MIN_LATLON_DIFF) { if (Math.abs(diffy) > MIN_LATLON_DIFF) {
if (coords[i + 1].x > coords[i].x) { if (coords[i + 1].x > coords[i].x) {
factor = -1; factor = -1;
} else } else {
factor = 1; factor = 1;
}
if (diffy < 0.0) { if (diffy < 0.0) {
coords[i - 1].y -= factor * adjustedValue; coords[i - 1].y -= factor * adjustedValue;
} else { } else {
coords[i + 1].y += factor * adjustedValue; coords[i + 1].y += factor * adjustedValue;
} }
if (i == n - 3) if (i == (n - 3)) {
coords[0].y = coords[i - 1].y; coords[0].y = coords[i - 1].y;
} }
} }
} }
} }
}
} }

View file

@ -73,6 +73,8 @@ import com.vividsolutions.jts.geom.Geometry;
* May 10, 2013 1951 rjpeter Updated ugcZones references * May 10, 2013 1951 rjpeter Updated ugcZones references
* May 31, 2013 DR 16264 D. Friedman Fix query in prepare method. * May 31, 2013 DR 16264 D. Friedman Fix query in prepare method.
* Jun 05, 2013 DR 16279 D. Friedman Fix updating of issuance time for followups. * Jun 05, 2013 DR 16279 D. Friedman Fix updating of issuance time for followups.
* Aug 14, 2013 DR 16483 Qinglu Lin Fixed no option issue in WarnGen dropdown menu after
* issuance of an CANCON and restart of CAVE.
* </pre> * </pre>
* *
* @author mschenke * @author mschenke
@ -342,7 +344,7 @@ public class CurrentWarnings {
|| (action == WarningAction.EXP)) { || (action == WarningAction.EXP)) {
if ((rval != null) if ((rval != null)
&& (warning.getCountyheader().equals( && (warning.getCountyheader().equals(
rval.getCountyheader()) || !warning rval.getCountyheader()) || warning
.getUgcZones().containsAll( .getUgcZones().containsAll(
rval.getUgcZones()))) { rval.getUgcZones()))) {
rval = null; rval = null;

View file

@ -32,6 +32,7 @@ import com.raytheon.viz.warngen.text.ICommonPatterns;
* Mar 13, 2013 DR 15892 D. Friedman Handle SMW format in canceledAreasFromText * Mar 13, 2013 DR 15892 D. Friedman Handle SMW format in canceledAreasFromText
* Aug 6, 2013 2243 jsanchez Updated the time ranges to be removed from the follow up list correctly. * Aug 6, 2013 2243 jsanchez Updated the time ranges to be removed from the follow up list correctly.
* Aug 13, 2013 2243 jsanchez Removed calendar object. * Aug 13, 2013 2243 jsanchez Removed calendar object.
* Aug 15, 2013 2243 jsanchez Reset the time ranges to the correct values.
* *
* </pre> * </pre>
* *
@ -314,45 +315,40 @@ public class FollowUpUtil {
TimeRange rval = null; TimeRange rval = null;
// The time ranges are offset by 1 minute so that after a refresh and on
// the final minute of the time range the follow up data will be
// removed. For example, if a CON is only a available until 5 minutes
// before a warnings expiration, when the time reaches 5 minutes the
// follow up data for a CON is correctly removed.
if (action == WarningAction.NEW) { if (action == WarningAction.NEW) {
/* Calculate NEW Time Range */ /* Calculate NEW Time Range */
start.setTime(record.getEndTime().getTime()); start.setTime(record.getEndTime().getTime());
start.add(Calendar.MINUTE, -21); start.add(Calendar.MINUTE, -20);
end.setTime(record.getEndTime().getTime()); end.setTime(record.getEndTime().getTime());
end.add(Calendar.MINUTE, 29); end.add(Calendar.MINUTE, 30);
rval = new TimeRange(start, end); rval = new TimeRange(start, end);
} else if (action == WarningAction.COR) { } else if (action == WarningAction.COR) {
/* Calculate COR Time Range */ /* Calculate COR Time Range */
end.setTime(record.getIssueTime().getTime()); end.setTime(record.getIssueTime().getTime());
end.add(Calendar.MINUTE, 9); end.add(Calendar.MINUTE, 10);
rval = new TimeRange(record.getStartTime(), end); rval = new TimeRange(record.getStartTime(), end);
} else if (action == WarningAction.CAN) { } else if (action == WarningAction.CAN) {
/* Calculate CAN Time Range */ /* Calculate CAN Time Range */
end.setTime(record.getEndTime().getTime()); end.setTime(record.getEndTime().getTime());
end.add(Calendar.MINUTE, -11); end.add(Calendar.MINUTE, -10);
rval = new TimeRange(record.getStartTime(), end); rval = new TimeRange(record.getStartTime(), end);
} else if (action == WarningAction.CON) { } else if (action == WarningAction.CON) {
/* Calculate CON Time Range */ /* Calculate CON Time Range */
end.setTime(record.getEndTime().getTime()); end.setTime(record.getEndTime().getTime());
end.add(Calendar.MINUTE, -6); end.add(Calendar.MINUTE, -5);
rval = new TimeRange(record.getStartTime(), end); rval = new TimeRange(record.getStartTime(), end);
} else if (action == WarningAction.EXP) { } else if (action == WarningAction.EXP) {
/* Calculate EXP Time Range */ /* Calculate EXP Time Range */
start.setTime(record.getEndTime().getTime()); start.setTime(record.getEndTime().getTime());
start.add(Calendar.MINUTE, -11); start.add(Calendar.MINUTE, -10);
end.setTime(record.getEndTime().getTime()); end.setTime(record.getEndTime().getTime());
end.add(Calendar.MINUTE, 9); end.add(Calendar.MINUTE, 10);
rval = new TimeRange(start, end); rval = new TimeRange(start, end);
} else if (action == WarningAction.EXT) { } else if (action == WarningAction.EXT) {
/* Calculate EXT Time Range */ /* Calculate EXT Time Range */
start.setTime(record.getStartTime().getTime()); start.setTime(record.getStartTime().getTime());
end.setTime(record.getEndTime().getTime()); end.setTime(record.getEndTime().getTime());
end.add(Calendar.MINUTE, -6); end.add(Calendar.MINUTE, -5);
rval = new TimeRange(start, end); rval = new TimeRange(start, end);
} }

View file

@ -197,12 +197,5 @@ if [ $? -ne 0 ]; then
echo "ERROR: Failed to copy the org.apache.thrift lib to its destination." echo "ERROR: Failed to copy the org.apache.thrift lib to its destination."
exit 1 exit 1
fi fi
# org.apache.qpid lib -> notification/lib
cp -vPf ${BUILD_ROOT}/workspace_/org.apache.qpid/${FOSS_LIB_DIR}/* \
${BUILD_ROOT}/awips2/notification/${FOSS_LIB_DIR}
if [ $? -ne 0 ]; then
echo "ERROR: Failed to copy the org.apache.qpid lib to its destination."
exit 1
fi
exit 0 exit 0

View file

@ -39,7 +39,7 @@
<option id="gnu.cpp.compiler.so.release.option.optimization.level.1190342998" name="Optimization Level" superClass="gnu.cpp.compiler.so.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/> <option id="gnu.cpp.compiler.so.release.option.optimization.level.1190342998" name="Optimization Level" superClass="gnu.cpp.compiler.so.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.so.release.option.debugging.level.1948609588" name="Debug Level" superClass="gnu.cpp.compiler.so.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.default" valueType="enumerated"/> <option id="gnu.cpp.compiler.so.release.option.debugging.level.1948609588" name="Debug Level" superClass="gnu.cpp.compiler.so.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.default" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1888011361" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> <option id="gnu.cpp.compiler.option.include.paths.1888011361" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/include}&quot;"/> <listOptionValue builtIn="false" value="/awips2/qpid/include"/>
<listOptionValue builtIn="false" value="/usr/include/"/> <listOptionValue builtIn="false" value="/usr/include/"/>
<listOptionValue builtIn="false" value="/usr/local/include"/> <listOptionValue builtIn="false" value="/usr/local/include"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/include}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/include}&quot;"/>
@ -60,14 +60,14 @@
<option defaultValue="true" id="gnu.cpp.link.so.release.option.shared.393797976" name="Shared (-shared)" superClass="gnu.cpp.link.so.release.option.shared" valueType="boolean"/> <option defaultValue="true" id="gnu.cpp.link.so.release.option.shared.393797976" name="Shared (-shared)" superClass="gnu.cpp.link.so.release.option.shared" valueType="boolean"/>
<option id="gnu.cpp.link.option.libs.60193779" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> <option id="gnu.cpp.link.option.libs.60193779" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="thrift"/> <listOptionValue builtIn="false" value="thrift"/>
<listOptionValue builtIn="false" value="uuid"/>
<listOptionValue builtIn="false" value="qpidcommon"/> <listOptionValue builtIn="false" value="qpidcommon"/>
<listOptionValue builtIn="false" value="qpidtypes"/> <listOptionValue builtIn="false" value="qpidtypes"/>
<listOptionValue builtIn="false" value="qpidmessaging"/> <listOptionValue builtIn="false" value="qpidmessaging"/>
<listOptionValue builtIn="false" value="curl"/> <listOptionValue builtIn="false" value="curl"/>
<listOptionValue builtIn="false" value="qpidclient"/>
</option> </option>
<option id="gnu.cpp.link.option.paths.1171960394" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> <option id="gnu.cpp.link.option.paths.1171960394" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/lib}&quot;"/> <listOptionValue builtIn="false" value="/awips2/qpid/lib"/>
<listOptionValue builtIn="false" value="/usr/local/lib"/> <listOptionValue builtIn="false" value="/usr/local/lib"/>
<listOptionValue builtIn="false" value="/usr/kerberos/lib"/> <listOptionValue builtIn="false" value="/usr/kerberos/lib"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib}&quot;"/>
@ -99,753 +99,6 @@
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> <storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.548606643;cdt.managedbuild.config.gnu.so.debug.548606643.;cdt.managedbuild.tool.gnu.c.compiler.so.debug.526103997;cdt.managedbuild.tool.gnu.c.compiler.input.804832564">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.release.1201809015;cdt.managedbuild.config.gnu.so.release.1201809015.730322548;cdt.managedbuild.tool.gnu.cpp.compiler.so.release.1243921223;cdt.managedbuild.tool.gnu.cpp.compiler.input.1611498141">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.release.1201809015;cdt.managedbuild.config.gnu.so.release.1201809015.;cdt.managedbuild.tool.gnu.cpp.compiler.so.release.133837787;cdt.managedbuild.tool.gnu.cpp.compiler.input.857651647">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.548606643;cdt.managedbuild.config.gnu.so.debug.548606643.2015427790;cdt.managedbuild.tool.gnu.cpp.compiler.so.debug.1843780412;cdt.managedbuild.tool.gnu.cpp.compiler.input.455091642">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.release.1201809015;cdt.managedbuild.config.gnu.so.release.1201809015.;cdt.managedbuild.tool.gnu.c.compiler.so.release.2044944995;cdt.managedbuild.tool.gnu.c.compiler.input.1923668928">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.release.1201809015;cdt.managedbuild.config.gnu.so.release.1201809015.730322548;cdt.managedbuild.tool.gnu.c.compiler.so.release.1431258305;cdt.managedbuild.tool.gnu.c.compiler.input.1668119339">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.548606643;cdt.managedbuild.config.gnu.so.debug.548606643.;cdt.managedbuild.tool.gnu.cpp.compiler.so.debug.485493337;cdt.managedbuild.tool.gnu.cpp.compiler.input.1569616918">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.so.debug.548606643;cdt.managedbuild.config.gnu.so.debug.548606643.2015427790;cdt.managedbuild.tool.gnu.c.compiler.so.debug.902270269;cdt.managedbuild.tool.gnu.c.compiler.input.971839399">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
</storageModule>
</cconfiguration> </cconfiguration>
<cconfiguration id="cdt.managedbuild.config.gnu.so.release.1201809015.180606627"> <cconfiguration id="cdt.managedbuild.config.gnu.so.release.1201809015.180606627">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.so.release.1201809015.180606627" moduleId="org.eclipse.cdt.core.settings" name="Build x86_64"> <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.so.release.1201809015.180606627" moduleId="org.eclipse.cdt.core.settings" name="Build x86_64">
@ -884,7 +137,6 @@
<option id="gnu.cpp.compiler.so.release.option.debugging.level.280582007" name="Debug Level" superClass="gnu.cpp.compiler.so.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/> <option id="gnu.cpp.compiler.so.release.option.debugging.level.280582007" name="Debug Level" superClass="gnu.cpp.compiler.so.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.931221899" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath"> <option id="gnu.cpp.compiler.option.include.paths.931221899" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/awips2/qpid/include"/> <listOptionValue builtIn="false" value="/awips2/qpid/include"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/include}&quot;"/>
<listOptionValue builtIn="false" value="/usr/include/"/> <listOptionValue builtIn="false" value="/usr/include/"/>
<listOptionValue builtIn="false" value="/usr/local/include"/> <listOptionValue builtIn="false" value="/usr/local/include"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/include}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/include}&quot;"/>
@ -905,17 +157,17 @@
<option defaultValue="true" id="gnu.cpp.link.so.release.option.shared.340284127" name="Shared (-shared)" superClass="gnu.cpp.link.so.release.option.shared" valueType="boolean"/> <option defaultValue="true" id="gnu.cpp.link.so.release.option.shared.340284127" name="Shared (-shared)" superClass="gnu.cpp.link.so.release.option.shared" valueType="boolean"/>
<option id="gnu.cpp.link.option.libs.1646606439" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs"> <option id="gnu.cpp.link.option.libs.1646606439" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="thrift"/> <listOptionValue builtIn="false" value="thrift"/>
<listOptionValue builtIn="false" value="uuid"/>
<listOptionValue builtIn="false" value="qpidcommon"/> <listOptionValue builtIn="false" value="qpidcommon"/>
<listOptionValue builtIn="false" value="qpidtypes"/> <listOptionValue builtIn="false" value="qpidtypes"/>
<listOptionValue builtIn="false" value="qpidmessaging"/> <listOptionValue builtIn="false" value="qpidmessaging"/>
<listOptionValue builtIn="false" value="curl"/> <listOptionValue builtIn="false" value="curl"/>
<listOptionValue builtIn="false" value="qpidclient"/>
</option> </option>
<option id="gnu.cpp.link.option.paths.400490599" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths"> <option id="gnu.cpp.link.option.paths.400490599" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="/awips2/qpid/lib"/>
<listOptionValue builtIn="false" value="/usr/local/lib"/> <listOptionValue builtIn="false" value="/usr/local/lib"/>
<listOptionValue builtIn="false" value="/usr/kerberos/lib"/> <listOptionValue builtIn="false" value="/usr/kerberos/lib"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib64}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib64}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/lib64}&quot;"/>
</option> </option>
<option id="gnu.cpp.link.option.flags.1587670958" name="Linker flags" superClass="gnu.cpp.link.option.flags" value="-m64" valueType="string"/> <option id="gnu.cpp.link.option.flags.1587670958" name="Linker flags" superClass="gnu.cpp.link.option.flags" value="-m64" valueType="string"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.522117352" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input"> <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.522117352" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
@ -944,6 +196,14 @@
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/> <storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="edex_com.cdt.managedbuild.target.gnu.so.206598592" name="Shared Library" projectType="cdt.managedbuild.target.gnu.so"/>
</storageModule>
<storageModule moduleId="refreshScope" versionNumber="1">
<resource resourceType="PROJECT" workspacePath="/edex_com"/>
</storageModule>
<storageModule moduleId="scannerConfiguration"> <storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
@ -1691,9 +951,4 @@
</profile> </profile>
</scannerConfigBuildInfo> </scannerConfigBuildInfo>
</storageModule> </storageModule>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="edex_com.cdt.managedbuild.target.gnu.so.206598592" name="Shared Library" projectType="cdt.managedbuild.target.gnu.so"/>
</storageModule>
</cproject> </cproject>

View file

@ -1 +1,2 @@
/Build x86 /Build x86
/Build x86_64

View file

@ -28,6 +28,7 @@
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 11/2/09 3375 brockwoo Initial Creation * 11/2/09 3375 brockwoo Initial Creation
* 08/13/13 2257 bkowal Update for qpid 0.18.
* *
* </pre> * </pre>
* *
@ -35,14 +36,18 @@
* @version 1 * @version 1
*/ */
#include <qpid/client/QueueOptions.h> #include <iostream>
#include <qpid/client/Connection.h> #include <sstream>
#include <uuid/uuid.h>
#include <qpid/messaging/Connection.h>
#include <qpid/messaging/Duration.h>
#include <qpid/Url.h> #include <qpid/Url.h>
#include "EdexNotification.h" #include "EdexNotification.h"
using qpid::Url; using qpid::Url;
EdexNotification::EdexNotification(const string & brokerURI) { EdexNotification::EdexNotification(const string & brokerURI) :
duration(Duration(1000 * 120)) {
this->sessionTransacted = false; this->sessionTransacted = false;
this->brokerURI = brokerURI; this->brokerURI = brokerURI;
this->isConnected = false; this->isConnected = false;
@ -50,8 +55,6 @@ EdexNotification::EdexNotification(const string & brokerURI) {
this->mess = new com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage(); this->mess = new com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage();
this->timeout = false; this->timeout = false;
this->timeoutLength = 999999; this->timeoutLength = 999999;
this->subman = NULL;
this->localQueue = NULL;
} }
EdexNotification::~EdexNotification() { EdexNotification::~EdexNotification() {
@ -92,24 +95,14 @@ void EdexNotification::listen() {
Message message; Message message;
bool result; bool result;
try { try {
result = localQueue->get(message, 120 * qpid::sys::TIME_SEC); result = this->receiver.fetch(message, this->duration);
} catch(...) { } catch(...) {
cleanup(); cleanup();
throw; throw;
} }
if (result) { if (result) {
std::string output = message.getData(); this->session.acknowledge(message);
/* Message * message; std::string output = message.getContent();
if(timeout) {
message = this->consumer->receive();
}
else {
message = this->consumer->receive(timeoutLength);
}
if (message == NULL) {
listSize = 0;
} else {
*/
uint8_t * data = (uint8_t *) output.c_str(); uint8_t * data = (uint8_t *) output.c_str();
TMemoryBuffer * buffer = new TMemoryBuffer(data, TMemoryBuffer * buffer = new TMemoryBuffer(data,
output.length(), output.length(),
@ -136,16 +129,52 @@ void EdexNotification::listen() {
void EdexNotification::cleanup() { void EdexNotification::cleanup() {
// Destroy resources. // Destroy resources.
try {
delete subman; // attempt to close the receiver
subman = NULL; if (this->receiver != 0)
delete localQueue; {
localQueue = NULL; try
session.close(); {
connection.close(); this->receiver.close();
} catch (const std::exception& error) { this->receiver = 0;
this->isConnected = false;
} }
catch (const std::exception& error)
{
std::cout << "WARNING: Failed to close the receiver -"
<< error.what() << std::endl;
}
}
// attempt to close the session
if (this->session != 0)
{
try
{
this->session.close();
this->session = 0;
}
catch (const std::exception& error)
{
std::cout << "WARNING: Failed to close the session -"
<< error.what() << std::endl;
}
}
// attempt to close the connection
if (this->connection != 0)
{
try
{
this->connection.close();
this->connection = 0;
}
catch (const std::exception& error)
{
std::cout << "WARNING: Failed to close the connection -"
<< error.what() << std::endl;
}
}
this->isConnected = false; this->isConnected = false;
} }
@ -154,23 +183,38 @@ bool EdexNotification::connect() {
return this->isConnected; return this->isConnected;
} }
try { try {
this->connection.open(Url(brokerURI)); // initialize
this->session = this->connection.newSession(); this->connection = 0;
this->session = 0;
this->receiver = 0;
char uuidBuff[37];
uuid_t uuidGenerated;
uuid_generate_random(uuidGenerated);
uuid_unparse(uuidGenerated, uuidBuff);
std::string connectionOptions = "{sasl-mechanism:PLAIN,"
"username:guest,password:guest}";
this->connection = Connection(this->brokerURI, connectionOptions);
this->connection.open();
queue = "_edex.alert-edex_com@amq.topic_"; queue = "_edex.alert-edex_com@amq.topic_";
queue += session.getId().getName(); queue += std::string(uuidBuff);
QueueOptions qo;
qo.setSizePolicy(RING, 100 * 1024 * 1024, 5000); std::stringstream addressBuilder;
session.queueDeclare(arg::queue = queue, arg::exclusive = true, addressBuilder << queue;
arg::autoDelete = true, arg::arguments=qo); addressBuilder << "; {create:always,delete:always,node:{type:queue,";
session.exchangeBind(arg::exchange = "amq.topic", arg::queue = queue, addressBuilder << "x-bindings:[{exchange:amq.topic,queue:";
arg::bindingKey = "edex.alerts"); addressBuilder << queue;
subman = new SubscriptionManager(session); addressBuilder << ",key:edex.alerts}]}}";
localQueue = new LocalQueue(); const std::string address = addressBuilder.str();
subman->subscribe(*localQueue, queue);
this->session = this->connection.createSession();
this->receiver = this->session.createReceiver(address);
this->isConnected = true; this->isConnected = true;
} catch (const std::exception& error) { } catch (const std::exception& error) {
this->isConnected = false; this->cleanup();
cleanup();
throw; throw;
} }
return this->isConnected; return this->isConnected;

View file

@ -29,6 +29,7 @@
* Date Ticket# Engineer Description * Date Ticket# Engineer Description
* ------------ ---------- ----------- -------------------------- * ------------ ---------- ----------- --------------------------
* 11/2/09 3375 brockwoo Initial Creation * 11/2/09 3375 brockwoo Initial Creation
* 08/13/13 2257 bkowal Update for qpid 0.18.
* *
* </pre> * </pre>
* *
@ -43,18 +44,18 @@ typedef void CEdexNotification;
#ifdef __cplusplus #ifdef __cplusplus
#include <qpid/client/Connection.h> #include <qpid/messaging/Connection.h>
#include <qpid/client/Session.h> #include <qpid/messaging/Session.h>
#include <qpid/client/Message.h> #include <qpid/messaging/Message.h>
#include <qpid/client/MessageListener.h> #include <qpid/messaging/Duration.h>
#include <qpid/client/SubscriptionManager.h> #include <qpid/messaging/Receiver.h>
#include <qpid/sys/Time.h> #include <qpid/sys/Time.h>
#include <transport/TBufferTransports.h> #include <transport/TBufferTransports.h>
#include <sys/timeb.h> #include <sys/timeb.h>
#include "Notification_types.h" #include "Notification_types.h"
#include "NotificationProtocol.h" #include "NotificationProtocol.h"
using namespace qpid::client; using namespace qpid::messaging;
using namespace qpid::framing; using namespace qpid::framing;
using namespace std; using namespace std;
using apache::thrift::transport::TMemoryBuffer; using apache::thrift::transport::TMemoryBuffer;
@ -65,16 +66,16 @@ private:
Connection connection; Connection connection;
Session session; Session session;
Receiver receiver;
const Duration duration;
bool useTopic; bool useTopic;
bool sessionTransacted; bool sessionTransacted;
bool isConnected; bool isConnected;
int listSize; int listSize;
com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage * mess; com_raytheon_uf_common_dataplugin_message_DataURINotificationMessage * mess;
SubscriptionManager * subman;
vector<string>::iterator myStringIterator; vector<string>::iterator myStringIterator;
std::string brokerURI; std::string brokerURI;
std::string queue; std::string queue;
LocalQueue * localQueue;
bool timeout; bool timeout;
int timeoutLength; int timeoutLength;

View file

@ -45,14 +45,14 @@
<option id="gnu.c.compiler.exe.release.option.debugging.level.590465920" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" value="gnu.c.debugging.level.default" valueType="enumerated"/> <option id="gnu.c.compiler.exe.release.option.debugging.level.590465920" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" value="gnu.c.debugging.level.default" valueType="enumerated"/>
<option id="gnu.c.compiler.option.misc.other.1772453324" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-m32 -c -fmessage-length=0" valueType="string"/> <option id="gnu.c.compiler.option.misc.other.1772453324" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-m32 -c -fmessage-length=0" valueType="string"/>
<option id="gnu.c.compiler.option.include.paths.1577302699" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> <option id="gnu.c.compiler.option.include.paths.1577302699" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/include}&quot;"/> <listOptionValue builtIn="false" value="/awips2/qpid/include"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/src}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/src}&quot;"/>
</option> </option>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.563649508" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/> <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.563649508" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool> </tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.621939508" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release"> <tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.621939508" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release">
<option id="gnu.c.link.option.paths.945694272" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> <option id="gnu.c.link.option.paths.945694272" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/lib}&quot;"/> <listOptionValue builtIn="false" value="/awips2/qpid/lib"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/Build x86}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/Build x86}&quot;"/>
</option> </option>
@ -82,255 +82,6 @@
</sourceEntries> </sourceEntries>
</configuration> </configuration>
</storageModule> </storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.release.1309755902;cdt.managedbuild.config.gnu.exe.release.1309755902.;cdt.managedbuild.tool.gnu.c.compiler.exe.release.91404518;cdt.managedbuild.tool.gnu.c.compiler.input.1483689751">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.exe.debug.944270981;cdt.managedbuild.config.gnu.exe.debug.944270981.;cdt.managedbuild.tool.gnu.c.compiler.exe.debug.503280132;cdt.managedbuild.tool.gnu.c.compiler.input.2111842514">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-f ${project_name}_scd.mk" command="make" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/> <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/> <storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/> <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
@ -378,24 +129,24 @@
<option id="gnu.c.compiler.exe.release.option.debugging.level.832113686" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/> <option id="gnu.c.compiler.exe.release.option.debugging.level.832113686" name="Debug Level" superClass="gnu.c.compiler.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<option id="gnu.c.compiler.option.misc.other.1624933412" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-m64 -c -fmessage-length=0" valueType="string"/> <option id="gnu.c.compiler.option.misc.other.1624933412" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-m64 -c -fmessage-length=0" valueType="string"/>
<option id="gnu.c.compiler.option.include.paths.1093941043" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"> <option id="gnu.c.compiler.option.include.paths.1093941043" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/include}&quot;"/> <listOptionValue builtIn="false" value="/awips2/qpid/include"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/src}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/src}&quot;"/>
</option> </option>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.754027704" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/> <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.754027704" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool> </tool>
<tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.1572066433" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release"> <tool id="cdt.managedbuild.tool.gnu.c.linker.exe.release.1572066433" name="GCC C Linker" superClass="cdt.managedbuild.tool.gnu.c.linker.exe.release">
<option id="gnu.c.link.option.paths.1184519300" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths"> <option id="gnu.c.link.option.paths.1184519300" name="Library search path (-L)" superClass="gnu.c.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.qpid/lib64}&quot;"/> <listOptionValue builtIn="false" value="/awips2/qpid/lib"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib64}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/org.apache.thrift/lib64}&quot;"/>
<listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/Build x86_64}&quot;"/> <listOptionValue builtIn="false" value="&quot;${workspace_loc:/edex_com/Build x86_64}&quot;"/>
</option> </option>
<option id="gnu.c.link.option.ldflags.1878548950" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-m64" valueType="string"/> <option id="gnu.c.link.option.ldflags.1878548950" name="Linker flags" superClass="gnu.c.link.option.ldflags" value="-m64" valueType="string"/>
<option id="gnu.c.link.option.libs.961367030" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs"> <option id="gnu.c.link.option.libs.961367030" name="Libraries (-l)" superClass="gnu.c.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="edex_com"/> <listOptionValue builtIn="false" value="edex_com"/>
<listOptionValue builtIn="false" value="qpidclient"/>
<listOptionValue builtIn="false" value="thrift"/> <listOptionValue builtIn="false" value="thrift"/>
<listOptionValue builtIn="false" value="qpidmessaging"/> <listOptionValue builtIn="false" value="qpidmessaging"/>
<listOptionValue builtIn="false" value="qpidtypes"/> <listOptionValue builtIn="false" value="qpidtypes"/>
<listOptionValue builtIn="false" value="qpidclient"/>
<listOptionValue builtIn="false" value="qpidcommon"/> <listOptionValue builtIn="false" value="qpidcommon"/>
</option> </option>
<inputType id="cdt.managedbuild.tool.gnu.c.linker.input.1341350933" superClass="cdt.managedbuild.tool.gnu.c.linker.input"> <inputType id="cdt.managedbuild.tool.gnu.c.linker.input.1341350933" superClass="cdt.managedbuild.tool.gnu.c.linker.input">
@ -415,6 +166,16 @@
</sourceEntries> </sourceEntries>
</configuration> </configuration>
</storageModule> </storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="edex_notify.cdt.managedbuild.target.gnu.exe.1393028794" name="Executable" projectType="cdt.managedbuild.target.gnu.exe"/>
</storageModule>
<storageModule moduleId="refreshScope"/>
<storageModule moduleId="scannerConfiguration"> <storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/> <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"> <profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
@ -664,13 +425,4 @@
</profile> </profile>
</scannerConfigBuildInfo> </scannerConfigBuildInfo>
</storageModule> </storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="edex_notify.cdt.managedbuild.target.gnu.exe.1393028794" name="Executable" projectType="cdt.managedbuild.target.gnu.exe"/>
</storageModule>
</cproject> </cproject>

View file

@ -1 +1,2 @@
/Build x86 /Build x86
/Build x86_64

View file

@ -9,7 +9,7 @@
Name: awips2-ldm Name: awips2-ldm
Summary: AWIPS II LDM Distribution Summary: AWIPS II LDM Distribution
Version: %{_ldm_version} Version: %{_ldm_version}
Release: 6 Release: 7
Group: AWIPSII Group: AWIPSII
BuildRoot: /tmp BuildRoot: /tmp
BuildArch: noarch BuildArch: noarch
@ -20,7 +20,6 @@ Vendor: Raytheon
Packager: Bryan Kowal Packager: Bryan Kowal
AutoReq: no AutoReq: no
Requires: awips2-notification
Requires: qpid-cpp-client-devel Requires: qpid-cpp-client-devel
Requires: zlib-devel Requires: zlib-devel
provides: awips2-ldm provides: awips2-ldm
@ -77,7 +76,7 @@ fi
_ldm_destination=%{_build_root}/usr/local/ldm _ldm_destination=%{_build_root}/usr/local/ldm
_ldm_destination_source=${_ldm_destination}/SOURCES _ldm_destination_source=${_ldm_destination}/SOURCES
_NATIVELIB_PROJECTS=( 'edexBridge' 'decrypt_file' ) _NATIVELIB_PROJECTS=( 'edexBridge' 'decrypt_file' 'org.apache.qpid' )
_RPM_directory=%{_baseline_workspace}/rpms _RPM_directory=%{_baseline_workspace}/rpms
_Installer_ldm=${_RPM_directory}/awips2.core/Installer.ldm _Installer_ldm=${_RPM_directory}/awips2.core/Installer.ldm
@ -272,9 +271,28 @@ if [ ${_myHost} != "cpsbn1" -a ${_myHost} != "cpsbn2" -a ${_myHost} != "dx1" -a
fi fi
popd > /dev/null 2>&1 popd > /dev/null 2>&1
# build decrypt_file & edexBridge # extract qpid libraries; build decrypt_file & edexBridge
pushd . > /dev/null 2>&1 pushd . > /dev/null 2>&1
cd ${_ldm_dir}/SOURCES cd ${_ldm_dir}/SOURCES
# determine which lib directory to use
_arch=`uname -i`
_qpid_lib_dir="lib"
if [ "${_arch}" = "x86_64" ]; then
_qpid_lib_dir="lib64"
fi
/bin/tar -xvf org.apache.qpid.tar org.apache.qpid/${_qpid_lib_dir}/*
if [ $? -ne 0 ]; then
echo "FATAL: failed to extract the qpid libraries!"
exit 1
fi
cp -Pf org.apache.qpid/${_qpid_lib_dir}/* ${_ldm_root_dir}/lib
if [ $? -ne 0 ]; then
echo "FATAL: failed to copy the qpid libraries to the ldm lib directory."
exit 1
fi
/bin/tar -xf decrypt_file.tar /bin/tar -xf decrypt_file.tar
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
echo "FATAL: failed to untar decrypt_file.tar!" echo "FATAL: failed to untar decrypt_file.tar!"

View file

@ -28,6 +28,7 @@ Packager: Bryan Kowal
AutoReq: no AutoReq: no
requires: boost >= 1.33.1 requires: boost >= 1.33.1
requires: awips2-qpid-lib
provides: awips2-notification provides: awips2-notification
%description %description

View file

@ -2,11 +2,12 @@
# Determine where notification has been installed. # Determine where notification has been installed.
set NOTIFICATION_INSTALL="/awips2/notification" set NOTIFICATION_INSTALL="/awips2/notification"
set QPID_LIB_DIR="/awips2/qpid/lib"
if $?LD_LIBRARY_PATH then if $?LD_LIBRARY_PATH then
setenv LD_LIBRARY_PATH ${NOTIFICATION_INSTALL}/lib:$LD_LIBRARY_PATH setenv LD_LIBRARY_PATH ${NOTIFICATION_INSTALL}/lib:${QPID_LIB_DIR}:$LD_LIBRARY_PATH
else else
setenv LD_LIBRARY_PATH ${NOTIFICATION_INSTALL}/lib setenv LD_LIBRARY_PATH ${NOTIFICATION_INSTALL}/lib:${QPID_LIB_DIR}
endif endif
if $?PATH then if $?PATH then

View file

@ -2,23 +2,30 @@
# Is awips2-notification Installed? # Is awips2-notification Installed?
rpm -q awips2-notification > /dev/null 2>&1 rpm -q awips2-notification > /dev/null 2>&1
RC=$? if [ $? -ne 0 ]; then
if [ ${RC} -ne 0 ]; then
return return
fi fi
# Determine Where awips2-notification Has Been Installed. # Determine Where awips2-notification Has Been Installed.
NOTIFICATION_INSTALL="/awips2/notification" NOTIFICATION_INSTALL="/awips2/notification"
if [ "${NOTIFICATION_INSTALL}" = "" ]; then QPID_LIB_DIR="/awips2/qpid/lib"
return
fi
# Update The Environment. # Update The Environment.
# Determine if awips2-notification is Already On LD_LIBRARY_PATH # Determine if awips2-notification is Already On LD_LIBRARY_PATH
CHECK_PATH=`echo ${LD_LIBRARY_PATH} | grep ${NOTIFICATION_INSTALL}` CHECK_PATH=`echo ${LD_LIBRARY_PATH} | grep ${NOTIFICATION_INSTALL}`
if [ "${CHECK_PATH}" = "" ]; then if [ "${CHECK_PATH}" = "" ]; then
# awips2-notification Is Not On LD_LIBRARY_PATH; Add It. # awips2-notification Is Not On LD_LIBRARY_PATH; Add It.
export LD_LIBRARY_PATH=${NOTIFICATION_INSTALL}/lib:${LD_LIBRARY_PATH} _lib_dir=${NOTIFICATION_INSTALL}/lib
if [ -d ${NOTIFICATION_INSTALL}/lib64 ]; then
_lib_dir=${NOTIFICATION_INSTALL}/lib64
fi
export LD_LIBRARY_PATH=${_lib_dir}:${LD_LIBRARY_PATH}
fi
# Determine if the qpid lib directory is already on LD_LIBRARY_PATH
CHECK_PATH=`echo ${LD_LIBRARY_PATH} | grep ${QPID_LIB_DIR}`
if [ "${CHECK_PATH}" = "" ]; then
export LD_LIBRARY_PATH=${QPID_LIB_DIR}:$LD_LIBRARY_PATH
fi fi
# Determine if awips2-notification Is Already Part Of The Path. # Determine if awips2-notification Is Already Part Of The Path.

View file

@ -0,0 +1,122 @@
%define _build_arch %(uname -i)
%define _qpid_version 0.18
%define _qpid_build_loc %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%global qpid_src_dir qpid-%{version}
#
# AWIPS II QPID native Spec File
#
Name: awips2-qpid-lib
Summary: AWIPS II QPID Native Library Distribution
Version: %{_qpid_version}
Release: 1.el6
Group: AWIPSII
BuildRoot: %{_build_root}
BuildArch: %{_build_arch}
URL: N/A
License: N/A
Distribution: N/A
Vendor: Raytheon
Packager: Bryan Kowal
Source0: %{qpid_src_dir}.tar.gz
AutoReq: no
BuildRequires: awips2-python
provides: awips2-qpid-lib
%description
AWIPS II QPID Lib Distribution - Contains the qpid shared libraries and
header files for qpid %{_qpid_version}.
%prep
# Ensure that a "buildroot" has been specified.
if [ "%{_build_root}" = "" ]; then
echo "ERROR: A BuildRoot has not been specified."
echo "FATAL: Unable to Continue ... Terminating."
exit 1
fi
if [ -d %{_build_root} ]; then
rm -rf %{_build_root}
fi
if [ -d %{_qpid_build_loc} ]; then
rm -rf %{_qpid_build_loc}
fi
mkdir -p %{_qpid_build_loc}
if [ $? -ne 0 ]; then
exit 1
fi
cp -v %SOURCE0 %{_qpid_build_loc}
if [ $? -ne 0 ]; then
exit 1
fi
pushd . > /dev/null 2>&1
cd %{_qpid_build_loc}
tar -xvf %SOURCE0
if [ $? -ne 0 ]; then
exit 1
fi
popd > /dev/null 2>&1
%build
pushd . > /dev/null 2>&1
cd %{_qpid_build_loc}/%{qpid_src_dir}/cpp
./bootstrap
if [ $? -ne 0 ]; then
exit 1
fi
./configure --prefix=%{_qpid_build_loc}/awips2/qpid
if [ $? -ne 0 ]; then
exit 1
fi
make
if [ $? -ne 0 ]; then
exit 1
fi
popd > /dev/null 2>&1
%install
/bin/mkdir -p %{_qpid_build_loc}/awips2/qpid
if [ $? -ne 0 ]; then
exit 1
fi
pushd . > /dev/null 2>&1
cd %{_qpid_build_loc}/%{qpid_src_dir}/cpp
make install
if [ $? -ne 0 ]; then
exit 1
fi
popd > /dev/null 2>&1
/bin/mkdir -p %{_build_root}/awips2/qpid
if [ $? -ne 0 ]; then
exit 1
fi
# copy qpid lib and include directories.
/bin/cp -rv %{_qpid_build_loc}/awips2/qpid/lib \
%{_build_root}/awips2/qpid
/bin/cp -rv %{_qpid_build_loc}/awips2/qpid/include \
%{_build_root}/awips2/qpid
%pre
%post
%preun
%postun
%clean
rm -rf ${RPM_BUILD_ROOT}
rm -rf %{_qpid_build_loc}
%files
%defattr(644,awips,fxalpha,755)
%dir /awips2/qpid
%dir /awips2/qpid/lib
/awips2/qpid/lib/*
%dir /awips2/qpid/include
/awips2/qpid/include/*

View file

@ -54,6 +54,15 @@ rpmbuild -ba \
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
exit 1 exit 1
fi fi
rpmbuild -ba \
--define "_topdir ${TOPDIR}" \
--define "_baseline_workspace ${WORKSPACE}" \
--define "_build_root ${AWIPSII_BUILD_ROOT}" \
--buildroot ${AWIPSII_BUILD_ROOT} \
SPECS/qpid-lib.spec
if [ $? -ne 0 ]; then
exit 1
fi
popd > /dev/null popd > /dev/null
exit 0 exit 0

View file

@ -57,6 +57,22 @@ function buildQPID()
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
return 1 return 1
fi fi
cd ../x86_64
if [ $? -ne 0 ]; then
echo "ERROR: Failed to build Qpid v0.18 lib."
return 1
fi
if [ ! -d ${AWIPSII_TOP_DIR}/RPMS/x86_64 ]; then
mkdir -p ${AWIPSII_TOP_DIR}/RPMS/x86_64
if [ $? -ne 0 ]; then
exit 1
fi
fi
/bin/cp -v *.rpm ${AWIPSII_TOP_DIR}/RPMS/x86_64
if [ $? -ne 0 ]; then
echo "ERROR: Failed to build Qpid v0.18 lib."
return 1
fi
popd > /dev/null 2>&1 popd > /dev/null 2>&1
pushd . > /dev/null 2>&1 pushd . > /dev/null 2>&1